xref: /freebsd/contrib/tzdata/NEWS (revision d2cccdef30376b7de5643caae1ef035f8e6932f0)
1News for the tz database
2
3Release 2025b - 2025-03-22 13:40:46 -0700
4
5  Briefly:
6    New zone for Aysén Region in Chile which moves from -04/-03 to -03.
7
8  Changes to future timestamps
9
10    Chile's Aysén Region moves from -04/-03 to -03 year-round, joining
11    Magallanes Region.  The region will not change its clocks on
12    2025-04-05 at 24:00, diverging from America/Santiago and creating a
13    new zone America/Coyhaique.  (Thanks to Yonathan Dossow.)  Model
14    this as a change to standard offset effective 2025-03-20.
15
16  Changes to past timestamps
17
18    Iran switched from +04 to +0330 on 1978-11-10 at 24:00, not at
19    year end.  (Thanks to Roozbeh Pournader.)
20
21  Changes to code
22
23    'zic -l TIMEZONE -d . -l /some/other/file/system' no longer
24    attempts to create an incorrect symlink, and no longer has a
25    read buffer underflow.  (Problem reported by Evgeniy Gorbanev.)
26
27
28Release 2025a - 2025-01-15 10:47:24 -0800
29
30  Briefly:
31    Paraguay adopted permanent -03 starting spring 2024.
32    Improve pre-1991 data for the Philippines.
33    Etc/Unknown is now reserved.
34
35  Changes to future timestamps
36
37    Paraguay stopped changing its clocks after the spring-forward
38    transition on 2024-10-06, so it is now permanently at -03.
39    (Thanks to Heitor David Pinto and Even Scharning.)
40    This affects timestamps starting 2025-03-22, as well as the
41    obsolescent tm_isdst flags starting 2024-10-15.
42
43  Changes to past timestamps
44
45    Correct timestamps for the Philippines before 1900, and from 1937
46    through 1990.  (Thanks to P Chan for the heads-up and citations.)
47    This includes adjusting local mean time before 1899; fixing
48    transitions in September 1899, January 1937, and June 1954; adding
49    transitions in December 1941, November 1945, March and September
50    1977, and May and July 1990; and removing incorrect transitions in
51    March and September 1978.
52
53  Changes to data
54
55    Add zone1970.tab lines for the Concordia and Eyre Bird Observatory
56    research stations.  (Thanks to Derick Rethans and Jule Dabars.)
57
58  Changes to code
59
60    strftime %s now generates the correct numeric string even when the
61    represented number does not fit into time_t.  This is better than
62    generating the numeric equivalent of (time_t) -1, as strftime did
63    in TZDB releases 96a (when %s was introduced) through 2020a and in
64    releases 2022b through 2024b.  It is also better than failing and
65    returning 0, as strftime did in releases 2020b through 2022a.
66
67    strftime now outputs an invalid conversion specifier as-is,
68    instead of eliding the leading '%', which confused debugging.
69
70    An invalid TZ now generates the time zone abbreviation "-00", not
71    "UTC", to help the user see that an error has occurred.  (Thanks
72    to Arthur David Olson for suggesting a "wrong result".)
73
74    mktime and timeoff no longer incorrectly fail merely because a
75    struct tm component near INT_MIN or INT_MAX overflows when a
76    lower-order component carries into it.
77
78    TZNAME_MAXIMUM, the maximum number of bytes in a proleptic TZ
79    string's time zone abbreviation, now defaults to 254 not 255.
80    This helps reduce the size of internal state from 25480 to 21384
81    on common platforms.  This change should not be a problem, as
82    nobody uses such long "abbreviations" and the longstanding tzcode
83    maximum was 16 until release 2023a.  For those who prefer no
84    arbitrary limits, you can now specify TZNAME_MAXIMUM values up to
85    PTRDIFF_MAX, a limit forced by C anyway; formerly tzcode silently
86    misbehaved unless TZNAME_MAXIMUM was less than INT_MAX.
87
88    tzset and related functions no longer leak a file descriptor if
89    another thread forks or execs at about the same time and if the
90    platform has O_CLOFORK and O_CLOEXEC respectively.  Also, the
91    functions no longer let a TZif file become a controlling terminal.
92
93    'zdump -' now reads TZif data from /dev/stdin.
94    (From a question by Arthur David Olson.)
95
96  Changes to documentation
97
98    The name Etc/Unknown is now reserved: it will not be used by TZDB.
99    This is for compatibility with CLDR, which uses the string
100    "Etc/Unknown" for an unknown or invalid timezone.  (Thanks to
101    Justin Grant, Mark Davis, and Guy Harris.)
102
103    Cite Internet RFC 9636, which obsoletes RFC 8536 for TZif format.
104
105
106Release 2024b - 2024-09-04 12:27:47 -0700
107
108  Briefly:
109    Improve historical data for Mexico, Mongolia, and Portugal.
110    System V names are now obsolescent.
111    The main data form now uses %z.
112    The code now conforms to RFC 8536 for early timestamps.
113    Support POSIX.1-2024, which removes asctime_r and ctime_r.
114    Assume POSIX.2-1992 or later for shell scripts.
115    SUPPORT_C89 now defaults to 1.
116
117  Changes to past timestamps
118
119    Asia/Choibalsan is now an alias for Asia/Ulaanbaatar rather than
120    being a separate Zone with differing behavior before April 2008.
121    This seems better given our wildly conflicting information about
122    Mongolia's time zone history.  (Thanks to Heitor David Pinto.)
123
124    Historical transitions for Mexico have been updated based on
125    official Mexican decrees.  The affected timestamps occur during
126    the years 1921-1927, 1931, 1945, 1949-1970, and 1981-1997.
127    The affected zones are America/Bahia_Banderas, America/Cancun,
128    America/Chihuahua, America/Ciudad_Juarez, America/Hermosillo,
129    America/Mazatlan, America/Merida, America/Mexico_City,
130    America/Monterrey, America/Ojinaga, and America/Tijuana.
131    (Thanks to Heitor David Pinto.)
132
133    Historical transitions for Portugal, represented by Europe/Lisbon,
134    Atlantic/Azores, and Atlantic/Madeira, have been updated based on a
135    close reading of old Portuguese legislation, replacing previous data
136    mainly originating from Whitman and Shanks & Pottenger.  These
137    changes affect a few transitions in 1917-1921, 1924, and 1940
138    throughout these regions by a few hours or days, and various
139    timestamps between 1977 and 1993 depending on the region.  In
140    particular, the Azores and Madeira did not observe DST from 1977 to
141    1981.  Additionally, the adoption of standard zonal time in former
142    Portuguese colonies have been adjusted: Africa/Maputo in 1909, and
143    Asia/Dili by 22 minutes at the start of 1912.
144    (Thanks to Tim Parenti.)
145
146  Changes to past tm_isdst flags
147
148    The period from 1966-04-03 through 1966-10-02 in Portugal is now
149    modeled as DST, to more closely reflect how contemporaneous changes
150    in law entered into force.
151
152  Changes to data
153
154    Names present only for compatibility with UNIX System V
155    (last released in the 1990s) have been moved to 'backward'.
156    These names, which for post-1970 timestamps mostly just duplicate
157    data of geographical names, were confusing downstream uses.
158    Names moved to 'backward' are now links to geographical names.
159    This affects behavior for TZ='EET' for some pre-1981 timestamps,
160    for TZ='CET' for some pre-1947 timestamps, and for TZ='WET' for
161    some pre-1996 timestamps.  Also, TZ='MET' now behaves like
162    TZ='CET' and so uses the abbreviation "CET" rather than "MET".
163    Those needing the previous TZDB behavior, which does not match any
164    real-world clocks, can find the old entries in 'backzone'.
165    (Problem reported by Justin Grant.)
166
167    The main source files' time zone abbreviations now use %z,
168    supported by zic since release 2015f and used in vanguard form
169    since release 2022b.  For example, America/Sao_Paulo now contains
170    the zone continuation line "-3:00 Brazil %z", which is less error
171    prone than the old "-3:00 Brazil -03/-02".  This does not change
172    the represented data: the generated TZif files are unchanged.
173    Rearguard form still avoids %z, to support obsolescent parsers.
174
175    Asia/Almaty has been removed from zonenow.tab as it now agrees
176    with Asia/Tashkent for future timestamps, due to Kazakhstan's
177    2024-02-29 time zone change.  Similarly, America/Scoresbysund
178    has been removed, as it now agrees with America/Nuuk due to
179    its 2024-03-31 time zone change.
180
181  Changes to code
182
183    localtime.c now always uses a TZif file's time type 0 to handle
184    timestamps before the file's first transition.  Formerly,
185    localtime.c sometimes inferred a different time type, in order to
186    handle problematic data generated by zic 2018e or earlier.  As it
187    is now safe to assume more recent versions of zic, there is no
188    longer a pressing need to fail to conform RFC 8536 section 3.2,
189    which requires using time type 0 in this situation.  This change
190    does not affect behavior when reading TZif files generated by zic
191    2018f and later.
192
193    POSIX.1-2024 removes asctime_r and ctime_r and does not let
194    libraries define them, so remove them except when needed to
195    conform to earlier POSIX.  These functions are dangerous as they
196    can overrun user buffers.  If you still need them, add
197    -DSUPPORT_POSIX2008 to CFLAGS.
198
199    The SUPPORT_C89 option now defaults to 1 instead of 0, fixing a
200    POSIX-conformance bug introduced in 2023a.
201
202    tzselect now supports POSIX.1-2024 proleptic TZ strings.  Also, it
203    assumes POSIX.2-1992 or later, as practical porting targets now
204    all support that, and it uses some features from POSIX.1-2024 if
205    available.
206
207  Changes to build procedure
208
209    'make check' no longer requires curl and Internet access.
210
211    The build procedure now assumes POSIX.2-1992 or later, to simplify
212    maintenance.  To build on Solaris 10, the only extant system still
213    defaulting to pre-POSIX, prepend /usr/xpg4/bin to PATH.
214
215  Changes to documentation
216
217    The documentation now reflects POSIX.1-2024.
218
219  Changes to commentary
220
221    Commentary about historical transitions in Portugal and her former
222    colonies has been expanded with links to relevant legislation.
223    (Thanks to Tim Parenti.)
224
225
226Release 2024a - 2024-02-01 09:28:56 -0800
227
228  Briefly:
229    Kazakhstan unifies on UTC+5 beginning 2024-03-01.
230    Palestine springs forward a week later after Ramadan.
231    zic no longer pretends to support indefinite-past DST.
232    localtime no longer mishandles Ciudad Juárez in 2422.
233
234  Changes to future timestamps
235
236    Kazakhstan unifies on UTC+5.  This affects Asia/Almaty and
237    Asia/Qostanay which together represent the eastern portion of the
238    country that will transition from UTC+6 on 2024-03-01 at 00:00 to
239    join the western portion.  (Thanks to Zhanbolat Raimbekov.)
240
241    Palestine springs forward a week later than previously predicted
242    in 2024 and 2025.  (Thanks to Heba Hamad.)  Change spring-forward
243    predictions to the second Saturday after Ramadan, not the first;
244    this also affects other predictions starting in 2039.
245
246  Changes to past timestamps
247
248    Asia/Ho_Chi_Minh's 1955-07-01 transition occurred at 01:00
249    not 00:00.  (Thanks to Đoàn Trần Công Danh.)
250
251    From 1947 through 1949, Toronto's transitions occurred at 02:00
252    not 00:00.  (Thanks to Chris Walton.)
253
254    In 1911 Miquelon adopted standard time on June 15, not May 15.
255
256  Changes to code
257
258    The FROM and TO columns of Rule lines can no longer be "minimum"
259    or an abbreviation of "minimum", because TZif files do not support
260    DST rules that extend into the indefinite past - although these
261    rules were supported when TZif files had only 32-bit data, this
262    stopped working when 64-bit TZif files were introduced in 1995.
263    This should not be a problem for realistic data, since DST was
264    first used in the 20th century.  As a transition aid, FROM columns
265    like "minimum" are now diagnosed and then treated as if they were
266    the year 1900; this should suffice for TZif files on old systems
267    with only 32-bit time_t, and it is more compatible with bugs in
268    2023c-and-earlier localtime.c.  (Problem reported by Yoshito
269    Umaoka.)
270
271    localtime and related functions no longer mishandle some
272    timestamps that occur about 400 years after a switch to a time
273    zone with a DST schedule.  In 2023d data this problem was visible
274    for some timestamps in November 2422, November 2822, etc. in
275    America/Ciudad_Juarez.  (Problem reported by Gilmore Davidson.)
276
277    strftime %s now uses tm_gmtoff if available.  (Problem and draft
278    patch reported by Dag-Erling Smørgrav.)
279
280  Changes to build procedure
281
282    The leap-seconds.list file is now copied from the IERS instead of
283    from its downstream counterpart at NIST, as the IERS version is
284    now in the public domain too and tends to be more up-to-date.
285    (Thanks to Martin Burnicki for liaisoning with the IERS.)
286
287  Changes to documentation
288
289    The strftime man page documents which struct tm members affect
290    which conversion specs, and that tzset is called.  (Problems
291    reported by Robert Elz and Steve Summit.)
292
293
294Release 2023d - 2023-12-21 20:02:24 -0800
295
296  Briefly:
297    Ittoqqortoormiit, Greenland changes time zones on 2024-03-31.
298    Vostok, Antarctica changed time zones on 2023-12-18.
299    Casey, Antarctica changed time zones five times since 2020.
300    Code and data fixes for Palestine timestamps starting in 2072.
301    A new data file zonenow.tab for timestamps starting now.
302
303  Changes to future timestamps
304
305    Ittoqqortoormiit, Greenland (America/Scoresbysund) joins most of
306    the rest of Greenland's timekeeping practice on 2024-03-31, by
307    changing its time zone from -01/+00 to -02/-01 at the same moment
308    as the spring-forward transition.  Its clocks will therefore not
309    spring forward as previously scheduled.  The time zone change
310    reverts to its common practice before 1981.  (Thanks to Jule Dabars.)
311
312    Fix predictions for DST transitions in Palestine in 2072-2075,
313    correcting a typo introduced in 2023a.  (Thanks to Jule Dabars.)
314
315  Changes to past and future timestamps
316
317    Vostok, Antarctica changed to +05 on 2023-12-18.  It had been at
318    +07 (not +06) for years.  (Thanks to Zakhary V. Akulov.)
319
320    Change data for Casey, Antarctica to agree with timeanddate.com,
321    by adding five time zone changes since 2020.  Casey is now at +08
322    instead of +11.
323
324  Changes to past tm_isdst flags
325
326    Much of Greenland, represented by America/Nuuk, changed its
327    standard time from -03 to -02 on 2023-03-25, not on 2023-10-28.
328    This does not affect UTC offsets, only the tm_isdst flag.
329    (Thanks to Thomas M. Steenholdt.)
330
331  New data file
332
333    A new data file zonenow.tab helps configure applications that use
334    timestamps dated from now on.  This simplifies configuration,
335    since users choose from a smaller Zone set.  The file's format is
336    experimental and subject to change.
337
338  Changes to code
339
340    localtime.c no longer mishandles TZif files that contain a single
341    transition into a DST regime.  Previously, it incorrectly assumed
342    DST was in effect before the transition too.  (Thanks to Alois
343    Treindl for debugging help.)
344
345    localtime.c's timeoff no longer collides with OpenBSD 7.4.
346
347    The C code now uses _Generic only if __STDC_VERSION__ says the
348    compiler is C11 or later.
349
350    tzselect now optionally reads zonenow.tab, to simplify when
351    configuring only for timestamps dated from now on.
352
353    tzselect no longer creates temporary files.
354
355    tzselect no longer mishandles the following:
356
357      Spaces and most other special characters in BUGEMAIL, PACKAGE,
358      TZDIR, and VERSION.
359
360      TZ strings when using mawk 1.4.3, which mishandles regular
361      expressions of the form /X{2,}/.
362
363      ISO 6709 coordinates when using an awk that lacks the GNU
364      extension of newlines in -v option-arguments.
365
366      Non UTF-8 locales when using an iconv command that lacks the GNU
367      //TRANSLIT extension.
368
369    zic no longer mishandles data for Palestine after the year 2075.
370    Previously, it incorrectly omitted post-2075 transitions that are
371    predicted for just before and just after Ramadan.  (Thanks to Ken
372    Murchison for debugging help.)
373
374    zic now works again on Linux 2.6.16 and 2.6.17 (2006).
375    (Problem reported by Rune Torgersen.)
376
377  Changes to build procedure
378
379    The Makefile is now more compatible with POSIX:
380     * It no longer defines AR, CC, CFLAGS, LDFLAGS, and SHELL.
381     * It no longer uses its own 'cc' in place of CC.
382     * It now uses ARFLAGS, with default specified by POSIX.
383     * It does not use LFLAGS incompatibly with POSIX.
384     * It uses the special .POSIX target.
385     * It quotes special characters more carefully.
386     * It no longer mishandles builds in an ISO 8859 locale.
387    Due to the CC changes, TZDIR is now #defined in a file tzdir.h
388    built by 'make', not in a $(CC) -D option.  Also, TZDEFAULT is
389    now treated like TZDIR as they have similar roles.
390
391  Changes to commentary
392
393     Limitations and hazards of the optional support for obsolescent
394     C89 platforms are documented better, along with a tentative
395     schedule for removing this support.
396
397
398Release 2023c - 2023-03-28 12:42:14 -0700
399
400  Changes to past and future timestamps
401
402    Model Lebanon's DST chaos by reverting data to tzdb 2023a.
403    (Thanks to Rany Hany for the heads-up.)
404
405
406Release 2023b - 2023-03-23 19:50:38 -0700
407
408  Changes to future timestamps
409
410    This year Lebanon springs forward April 20/21 not March 25/26.
411    (Thanks to Saadallah Itani.)  [This was reverted in 2023c.]
412
413
414Release 2023a - 2023-03-22 12:39:33 -0700
415
416  Briefly:
417    Egypt now uses DST again, from April through October.
418    This year Morocco springs forward April 23, not April 30.
419    Palestine delays the start of DST this year.
420    Much of Greenland still uses DST from 2024 on.
421    America/Yellowknife now links to America/Edmonton.
422    tzselect can now use current time to help infer timezone.
423    The code now defaults to C99 or later.
424    Fix use of C23 attributes.
425
426  Changes to future timestamps
427
428    Starting in 2023, Egypt will observe DST from April's last Friday
429    through October's last Thursday.  (Thanks to Ahmad ElDardiry.)
430    Assume the transition times are 00:00 and 24:00, respectively.
431
432    In 2023 Morocco's spring-forward transition after Ramadan
433    will occur April 23, not April 30.  (Thanks to Milamber.)
434    Adjust predictions for future years accordingly.  This affects
435    predictions for 2023, 2031, 2038, and later years.
436
437    This year Palestine will delay its spring forward from
438    March 25 to April 29 due to Ramadan.  (Thanks to Heba Hamad.)
439    Make guesses for future Ramadans too.
440
441    Much of Greenland, represented by America/Nuuk, will continue to
442    observe DST using European Union rules.  When combined with
443    Greenland's decision not to change the clocks in fall 2023,
444    America/Nuuk therefore changes from -03/-02 to -02/-01 effective
445    2023-10-29 at 01:00 UTC.  (Thanks to Thomas M. Steenholdt.)
446    This change from 2022g doesn't affect timestamps until 2024-03-30,
447    and doesn't affect tm_isdst until 2023-03-25.
448
449  Changes to past timestamps
450
451    America/Yellowknife has changed from a Zone to a backward
452    compatibility Link, as it no longer differs from America/Edmonton
453    since 1970.  (Thanks to Almaz Mingaleev.)  This affects some
454    pre-1948 timestamps.  The old data are now in 'backzone'.
455
456  Changes to past time zone abbreviations
457
458    When observing Moscow time, Europe/Kirov and Europe/Volgograd now
459    use the abbreviations MSK/MSD instead of numeric abbreviations,
460    for consistency with other timezones observing Moscow time.
461
462  Changes to code
463
464    You can now tell tzselect local time, to simplify later choices.
465    Select the 'time' option in its first prompt.
466
467    You can now compile with -DTZNAME_MAXIMUM=N to limit time zone
468    abbreviations to N bytes (default 255).  The reference runtime
469    library now rejects POSIX-style TZ strings that contain longer
470    abbreviations, treating them as UTC.  Previously the limit was
471    platform dependent and abbreviations were silently truncated to
472    16 bytes even when the limit was greater than 16.
473
474    The code by default is now designed for C99 or later.  To build on
475    a mostly-C89 platform, compile with -DPORT_TO_C89; this should
476    work on C89 platforms that also support C99 'long long' and
477    perhaps a few other extensions to C89.  To support C89 callers of
478    tzcode's library, compile with -DSUPPORT_C89; however, this could
479    trigger latent bugs in C99-or-later callers.  The two new macros
480    are transitional aids planned to be removed in a future version
481    (say, in 2029), when C99 or later will be required.
482
483    The code now builds again on pre-C99 platforms, if you compile
484    with -DPORT_TO_C89.  This fixes a bug introduced in 2022f.
485
486    On C23-compatible platforms tzcode no longer uses syntax like
487    'static [[noreturn]] void usage(void);'.  Instead, it uses
488    '[[noreturn]] static void usage(void);' as strict C23 requires.
489    (Problem reported by Houge Langley.)
490
491    The code's functions now constrain their arguments with the C
492    'restrict' keyword consistently with their documentation.
493    This may allow future optimizations.
494
495    zdump again builds standalone with ckdadd and without setenv,
496    fixing a bug introduced in 2022g.  (Problem reported by panic.)
497
498    leapseconds.awk can now process a leap seconds file that never
499    expires; this might be useful if leap seconds are discontinued.
500
501  Changes to commentary
502
503    tz-link.html has a new section "Coordinating with governments and
504    distributors".  (Thanks to Neil Fuller for some of the text.)
505
506    To improve tzselect diagnostics, zone1970.tab's comments column is
507    now limited to countries that have multiple timezones.
508
509    Note that there are plans to discontinue leap seconds by 2035.
510
511
512Release 2022g - 2022-11-29 08:58:31 -0800
513
514  Briefly:
515    The northern edge of Chihuahua changes to US timekeeping.
516    Much of Greenland stops changing clocks after March 2023.
517    Fix some pre-1996 timestamps in northern Canada.
518    C89 is now deprecated; please use C99 or later.
519    Portability fixes for AIX, libintl, MS-Windows, musl, z/OS
520    In C code, use more C23 features if available.
521    C23 timegm now supported by default
522    Fixes for unlikely integer overflows
523
524  Changes to future timestamps
525
526    In the Mexican state of Chihuahua, the border strip near the US
527    will change to agree with nearby US locations on 2022-11-30.
528    The strip's western part, represented by Ciudad Juárez, switches
529    from -06 all year to -07/-06 with US DST rules, like El Paso, TX.
530    The eastern part, represented by Ojinaga, will observe US DST next
531    year, like Presidio, TX.  (Thanks to Heitor David Pinto.)
532    A new Zone America/Ciudad_Juarez splits from America/Ojinaga.
533
534    Much of Greenland, represented by America/Nuuk, stops observing
535    winter time after March 2023, so its daylight saving time becomes
536    standard time.  (Thanks to Jonas Nyrup and Jürgen Appel.)
537
538  Changes to past timestamps
539
540    Changes for pre-1996 northern Canada (thanks to Chris Walton):
541
542      Merge America/Iqaluit and America/Pangnirtung into the former,
543      with a backward compatibility link for the latter name.
544      There is no good evidence the two locations differ since 1970.
545      This change affects pre-1996 America/Pangnirtung timestamps.
546
547      Cambridge Bay, Inuvik, Iqaluit, Rankin Inlet, Resolute and
548      Yellowknife did not observe DST in 1965, and did observe DST
549      from 1972 through 1979.
550
551      Whitehorse moved from -09 to -08 on 1966-02-27, not 1967-05-28.
552
553    Colombia's 1993 fallback was 02-06 24:00, not 04-04 00:00.
554    (Thanks to Alois Treindl.)
555
556    Singapore's 1981-12-31 change was at 16:00 UTC (23:30 local time),
557    not 24:00 local time.  (Thanks to Geoff Clare via Robert Elz.)
558
559  Changes to code
560
561    Although tzcode still works with C89, bugs found in recent routine
562    maintenance indicate that bitrot has set in and that in practice
563    C89 is no longer used to build tzcode.  As it is a maintenance
564    burden, support for C89 is planned to be removed soon.  Instead,
565    please use compilers compatible with C99, C11, C17, or C23.
566
567    timegm, which tzcode implemented in 1989, will finally be
568    standardized 34 years later as part of C23, so timegm is now
569    supported even if STD_INSPIRED is not defined.
570
571    Fix bug in zdump's tzalloc emulation on hosts that lack tm_zone.
572    (Problem reported by Đoàn Trần Công Danh.)
573
574    Fix bug in zic on hosts where malloc(0) yields NULL on success.
575    (Problem reported by Tim McBrayer for AIX 6.1.)
576
577    Fix zic configuration to avoid linkage failures on some platforms.
578    (Problems reported by Gilmore Davidson and Igor Ivanov.)
579
580    Work around MS-Windows nmake incompatibility with POSIX.
581    (Problem reported by Manuela Friedrich.)
582
583    Port mktime and strftime to debugging platforms where accessing
584    uninitialized data has undefined behavior (strftime problem
585    reported by Robert Elz).
586
587    Check more carefully for unlikely integer overflows, preferring
588    C23 <stdckdint.h> to overflow checking by hand, as the latter has
589    had obscure bugs.
590
591  Changes to build procedure
592
593    New Makefile rule check_mild that skips checking whether Link
594    lines are in the file 'backward'.  (Inspired by a suggestion from
595    Stephen Colebourne.)
596
597
598Release 2022f - 2022-10-28 18:04:57 -0700
599
600  Briefly:
601    Mexico will no longer observe DST except near the US border.
602    Chihuahua moves to year-round -06 on 2022-10-30.
603    Fiji no longer observes DST.
604    Move links to 'backward'.
605    In vanguard form, GMT is now a Zone and Etc/GMT a link.
606    zic now supports links to links, and vanguard form uses this.
607    Simplify four Ontario zones.
608    Fix a Y2438 bug when reading TZif data.
609    Enable 64-bit time_t on 32-bit glibc platforms.
610    Omit large-file support when no longer needed.
611    In C code, use some C23 features if available.
612    Remove no-longer-needed workaround for Qt bug 53071.
613
614  Changes to future timestamps
615
616    Mexico will no longer observe DST after 2022, except for areas
617    near the US border that continue to observe US DST rules.
618    On 2022-10-30 at 02:00 the Mexican state of Chihuahua moves
619    from -07 (-06 with DST) to year-round -06, thus not changing
620    its clocks that day.  The new law states that Chihuahua
621    near the US border no longer observes US DST.
622    (Thanks to gera for the heads-up about Chihuahua.)
623
624    Fiji will not observe DST in 2022/3.  (Thanks to Shalvin Narayan.)
625    For now, assume DST is suspended indefinitely.
626
627  Changes to data
628
629    Move links to 'backward' to ease and simplify link maintenance.
630    This affects generated data only if you use 'make BACKWARD='.
631
632    GMT is now a Zone and Etc/GMT a link instead of vice versa,
633    as GMT is needed for leap second support whereas Etc/GMT is not.
634    However, this change exposes a bug in TZUpdater 2.3.2 so it is
635    present only in vanguard form for now.
636
637    Vanguard form now uses links to links, as zic now supports this.
638
639  Changes to past timestamps
640
641    Simplify four Ontario zones, as most of the post-1970 differences
642    seem to have been imaginary.  (Problem reported by Chris Walton.)
643    Move America/Nipigon, America/Rainy_River, and America/Thunder_Bay
644    to 'backzone'; backward-compatibility links still work, albeit
645    with some different timestamps before November 2005.
646
647  Changes to code
648
649    zic now supports links to links regardless of input line order.
650    For example, if Australia/Sydney is a Zone, the lines
651      Link Australia/Canberra Australia/ACT
652      Link Australia/Sydney Australia/Canberra
653    now work correctly, even though the shell commands
654      ln Australia/Canberra Australia/ACT
655      ln Australia/Sydney Australia/Canberra
656    would fail because the first command attempts to use a link
657    Australia/Canberra that does not exist until after the second
658    command is executed.  Previously, zic had unspecified behavior if
659    a Link line's target was another link, and zic often misbehaved if
660    a Link line's target was a later Link line.
661
662    Fix line number in zic's diagnostic for a link to a link.
663
664    Fix a bug that caused localtime to mishandle timestamps starting
665    in the year 2438 when reading data generated by 'zic -b fat' when
666    distant-future DST transitions occur at times given in standard
667    time or in UT, not the usual case of local time.  This occurs when
668    the corresponding .zi Rule lines specify DST transitions with TO
669    columns of 'max' and AT columns that end in 's' or 'u'.  The
670    number 2438 comes from the 32-bit limit in the year 2038, plus the
671    400-year Gregorian cycle.  (Problem reported by Bradley White.)
672
673    On glibc 2.34 and later, which optionally supports 64-bit time_t
674    on platforms like x86 where time_t was traditionally 32 bits,
675    default time_t to 64 instead of 32 bits.  This lets functions like
676    localtime support timestamps after the year 2038, and fixes
677    year-2038 problems in zic when accessing files dated after 2038.
678    To continue to limit time_t to 32 bits on these platforms, use
679    "make CFLAGS='-D_TIME_BITS=32'".
680
681    In C code, do not enable large-file support on platforms like AIX
682    and macOS that no longer need it now that tzcode does not use
683    off_t or related functions like 'stat'.  Large-file support is
684    still enabled by default on GNU/Linux, as it is needed for 64-bit
685    time_t support.
686
687    In C code, prefer C23 keywords to pre-C23 macros for alignof,
688    bool, false, and true.  Also, use the following C23 features if
689    available: __has_include, unreachable.
690
691    zic no longer works around Qt bug 53071, as the relevant Qt
692    releases have been out of support since 2019.  This change affects
693    only fat TZif files, as thin files never had the workaround.
694
695    zdump no longer modifies the environ vector when compiled on
696    platforms lacking tm_zone or when compiled with -DUSE_LTZ=0.
697    This avoid undefined behavior on POSIX platforms.
698
699
700Release 2022e - 2022-10-11 11:13:02 -0700
701
702  Briefly:
703    Jordan and Syria switch from +02/+03 with DST to year-round +03.
704
705  Changes to future timestamps
706
707    Jordan and Syria are abandoning the DST regime and are changing to
708    permanent +03, so they will not fall back from +03 to +02 on
709    2022-10-28.  (Thanks to Steffen Thorsen and Issam Al-Zuwairi.)
710
711  Changes to past timestamps
712
713    On 1922-01-01 Tijuana adopted standard time at 00:00, not 01:00.
714
715  Changes to past time zone abbreviations and DST flags
716
717    The temporary advancement of clocks in central Mexico in summer
718    1931 is now treated as daylight saving time, instead of as two
719    changes to standard time.
720
721
722Release 2022d - 2022-09-23 12:02:57 -0700
723
724  Briefly:
725    Palestine transitions are now Saturdays at 02:00.
726    Simplify three Ukraine zones into one.
727
728  Changes to future timestamps
729
730    Palestine now springs forward and falls back at 02:00 on the
731    first Saturday on or after March 24 and October 24, respectively.
732    This means 2022 falls back 10-29 at 02:00, not 10-28 at 01:00.
733    (Thanks to Heba Hamad.)
734
735  Changes to past timestamps
736
737    Simplify three Ukraine zones to one, since the post-1970
738    differences seem to have been imaginary.  Move Europe/Uzhgorod and
739    Europe/Zaporozhye to 'backzone'; backward-compatibility links
740    still work, albeit with different timestamps before October 1991.
741
742
743Release 2022c - 2022-08-15 17:47:18 -0700
744
745  Briefly:
746    Work around awk bug in FreeBSD, macOS, etc.
747    Improve tzselect on intercontinental Zones.
748
749  Changes to code
750
751    Work around a bug in onetrueawk that broke commands like
752    'make traditional_tarballs' on FreeBSD, macOS, etc.
753    (Problem reported by Deborah Goldsmith.)
754
755    Add code to tzselect that uses experimental structured comments in
756    zone1970.tab to clarify whether Zones like Africa/Abidjan and
757    Europe/Istanbul cross continent or ocean boundaries.
758    (Inspired by a problem reported by Peter Krefting.)
759
760    Fix bug with 'zic -d /a/b/c' when /a is unwritable but the
761    directory /a/b already exists.
762
763    Remove zoneinfo2tdf.pl, as it was unused and triggered false
764    malware alarms on some email servers.
765
766
767Release 2022b - 2022-08-10 15:38:32 -0700
768
769  Briefly:
770    Chile's DST is delayed by a week in September 2022.
771    Iran no longer observes DST after 2022.
772    Rename Europe/Kiev to Europe/Kyiv.
773    New zic -R option
774    Vanguard form now uses %z.
775    Finish moving duplicate-since-1970 zones to 'backzone'.
776    New build option PACKRATLIST
777    New tailored_tarballs target, replacing rearguard_tarballs
778
779  Changes to future timestamps
780
781    Chile's 2022 DST start is delayed from September 4 to September 11.
782    (Thanks to Juan Correa.)
783
784    Iran plans to stop observing DST permanently, after it falls back
785    on 2022-09-21.  (Thanks to Ali Mirjamali.)
786
787  Changes to past timestamps
788
789    Finish moving to 'backzone' the location-based zones whose
790    timestamps since 1970 are duplicates; adjust links accordingly.
791    This change ordinarily affects only pre-1970 timestamps, and with
792    the new PACKRATLIST option it does not affect any timestamps.
793    In this round the affected zones are Antarctica/Vostok,
794    Asia/Brunei, Asia/Kuala_Lumpur, Atlantic/Reykjavik,
795    Europe/Amsterdam, Europe/Copenhagen, Europe/Luxembourg,
796    Europe/Monaco, Europe/Oslo, Europe/Stockholm, Indian/Christmas,
797    Indian/Cocos, Indian/Kerguelen, Indian/Mahe, Indian/Reunion,
798    Pacific/Chuuk, Pacific/Funafuti, Pacific/Majuro, Pacific/Pohnpei,
799    Pacific/Wake and Pacific/Wallis, and the affected links are
800    Arctic/Longyearbyen, Atlantic/Jan_Mayen, Iceland, Pacific/Ponape,
801    Pacific/Truk, and Pacific/Yap.
802
803    From fall 1994 through fall 1995, Shanks wrote that Crimea's
804    DST transitions were at 02:00 standard time, not at 00:00.
805    (Thanks to Michael Deckers.)
806
807    Iran adopted standard time in 1935, not 1946.  In 1977 it observed
808    DST from 03-21 23:00 to 10-20 24:00; its 1978 transitions were on
809    03-24 and 08-05, not 03-20 and 10-20; and its spring 1979
810    transition was on 05-27, not 03-21.
811    (Thanks to Roozbeh Pournader and Francis Santoni.)
812
813    Chile's observance of -04 from 1946-08-29 through 1947-03-31 was
814    considered DST, not standard time.  Santiago and environs had moved
815    their clocks back to rejoin the rest of mainland Chile; put this
816    change at the end of 1946-08-28.  (Thanks to Michael Deckers.)
817
818    Some old, small clock transitions have been removed, as people at
819    the time did not change their clocks.  This affects Asia/Hong_Kong
820    in 1904, Asia/Ho_Chi_Minh in 1906, and Europe/Dublin in 1880.
821
822  Changes to zone name
823
824    Rename Europe/Kiev to Europe/Kyiv, as "Kyiv" is more common in
825    English now.  Spelling of other names in Ukraine has not yet
826    demonstrably changed in common English practice so for now these
827    names retain old spellings, as in other countries (e.g.,
828    Europe/Prague not "Praha", and Europe/Sofia not "Sofiya").
829
830  Changes to code
831
832    zic has a new option '-R @N' to output explicit transitions < N.
833    (Need suggested by Almaz Mingaleev.)
834
835    'zic -r @N' no longer outputs bad data when N < first transition.
836    (Problem introduced in 2021d and reported by Peter Krefting.)
837
838    zic now checks its input for NUL bytes and unterminated lines, and
839    now supports input line lengths up to 2048 (not 512) bytes.
840
841    gmtime and related code now use the abbreviation "UTC" not "GMT".
842    POSIX is being revised to require this.
843
844    When tzset and related functions set vestigial static variables
845    like tzname, they now prefer specified timestamps to unspecified ones.
846    (Problem reported by Almaz Mingaleev.)
847
848    zic no longer complains "can't determine time zone abbreviation to
849    use just after until time" when a transition to a new standard
850    time occurs simultaneously with the first DST fallback transition.
851
852  Changes to build procedure
853
854    Source data in vanguard form now uses the %z notation, introduced
855    in release 2015f.  For example, for America/Sao_Paulo vanguard
856    form contains the zone continuation line "-3:00 Brazil %z", which
857    is simpler and more reliable than the line "-3:00 Brazil -03/-02"
858    used in main and rearguard forms.  The plan is for the main form
859    to use %z eventually; in the meantime maintainers of zi parsers
860    are encouraged to test the parsers on vanguard.zi.
861
862    The Makefile has a new PACKRATLIST option to select a subset of
863    'backzone'.  For example, 'make PACKRATDATA=backzone
864    PACKRATLIST=zone.tab' now generates TZif files identical to those
865    of the global-tz project.
866
867    The Makefile has a new tailored_tarballs target for generating
868    special-purpose tarballs.  It generalizes and replaces the
869    rearguard_tarballs target and related targets and macros, which
870    are now obsolescent.
871
872    'make install' now defaults LOCALTIME to Factory not GMT,
873    which means the default abbreviation is now "-00" not "GMT".
874
875    Remove the posix_packrat target, marked obsolescent in 2016a.
876
877
878Release 2022a - 2022-03-15 23:02:01 -0700
879
880  Briefly:
881    Palestine will spring forward on 2022-03-27, not -03-26.
882    zdump -v now outputs better failure indications.
883    Bug fixes for code that reads corrupted TZif data.
884
885  Changes to future timestamps
886
887    Palestine will spring forward on 2022-03-27, not 2022-03-26.
888    (Thanks to Heba Hamad.)  Predict future transitions for first
889    Sunday >= March 25.  Additionally, predict fallbacks to be the first
890    Friday on or after October 23, not October's last Friday, to be more
891    consistent with recent practice.  The first differing fallback
892    prediction is on 2025-10-24, not 2025-10-31.
893
894  Changes to past timestamps
895
896    From 1992 through spring 1996, Ukraine's DST transitions were at
897    02:00 standard time, not at 01:00 UTC.  (Thanks to Alois Treindl.)
898
899    Chile's Santiago Mean Time and its LMT precursor have been adjusted
900    eastward by 1 second to align with past and present law.
901
902  Changes to commentary
903
904    Add several references for Chile's 1946/1947 transitions, some of
905    which only affected portions of the country.
906
907  Changes to code
908
909    Fix bug when mktime gets confused by truncated TZif files with
910    unspecified local time.  (Problem reported by Almaz Mingaleev.)
911
912    Fix bug when 32-bit time_t code reads malformed 64-bit TZif data.
913    (Problem reported by Christos Zoulas.)
914
915    When reading a version 2 or later TZif file, the TZif reader now
916    validates the version 1 header and data block only enough to skip
917    over them, as recommended by RFC 8536 section 4.  Also, the TZif
918    reader no longer mistakenly attempts to parse a version 1 TZIf
919    file header as a TZ string.
920
921    zdump -v now outputs "(localtime failed)" and "(gmtime failed)"
922    when local time and UT cannot be determined for a timestamp.
923
924  Changes to build procedure
925
926    Distribution tarballs now use standard POSIX.1-1988 ustar format
927    instead of GNU format.  Although the formats are almost identical
928    for these tarballs, ustar headers' magic fields contain "ustar"
929    instead of "ustar ", and their version fields contain "00" instead
930    of " ".  The two formats are planned to diverge more significantly
931    for tzdb releases after 2242-03-16 12:56:31 UTC, when the ustar
932    format becomes obsolete and the tarballs switch to pax format, an
933    extension of ustar.  For details about these formats, please see
934    "pax - portable archive interchange", IEEE Std 1003.1-2017,
935    <https://pubs.opengroup.org/onlinepubs/9699919799/utilities/pax.html#tag_20_92_13>.
936
937
938Release 2021e - 2021-10-21 18:41:00 -0700
939
940  Changes to future timestamps
941
942    Palestine will fall back 10-29 (not 10-30) at 01:00.
943    (Thanks to P Chan and Heba Hemad.)
944
945
946Release 2021d - 2021-10-15 13:48:18 -0700
947
948  Briefly:
949    Fiji suspends DST for the 2021/2022 season.
950    'zic -r' marks unspecified timestamps with "-00".
951
952  Changes to future timestamps
953
954    Fiji will suspend observance of DST for the 2021/2022 season.
955    Assume for now that it will return next year.  (Thanks to Jashneel
956    Kumar and P Chan.)
957
958  Changes to code
959
960    'zic -r' now uses "-00" time zone abbreviations for intervals
961    with UT offsets that are unspecified due to -r truncation.
962    This implements a change in draft Internet RFC 8536bis.
963
964
965Release 2021c - 2021-10-01 14:21:49 -0700
966
967  Briefly:
968    Revert most 2021b changes to 'backward'.
969    Fix 'zic -b fat' bug in pre-1970 32-bit data.
970    Fix two Link line typos.
971    Distribute SECURITY file.
972
973    This release is intended as a bugfix release, to fix compatibility
974    problems and typos reported since 2021b was released.
975
976  Changes to Link directives
977
978    Revert almost all of 2021b's changes to the 'backward' file,
979    by moving Link directives back to where they were in 2021a.
980    Although 'zic' doesn't care which source file contains a Link
981    directive, some downstream uses ran into trouble with the move.
982    (Problem reported by Stephen Colebourne for Joda-Time.)
983
984    Fix typo that linked Atlantic/Jan_Mayen to the wrong location
985    (problem reported by Chris Walton).
986
987    Fix 'backzone' typo that linked America/Virgin to the wrong
988    location (problem reported by Michael Deckers).
989
990  Changes to code
991
992    Fix a bug in 'zic -b fat' that caused old timestamps to be
993    mishandled in 32-bit-only readers (problem reported by Daniel
994    Fischer).
995
996  Changes to documentation
997
998    Distribute the SECURITY file (problem reported by Andreas Radke).
999
1000
1001Release 2021b - 2021-09-24 16:23:00 -0700
1002
1003  Briefly:
1004    Jordan now starts DST on February's last Thursday.
1005    Samoa no longer observes DST.
1006    Merge more location-based Zones whose timestamps agree since 1970.
1007    Move some backward-compatibility links to 'backward'.
1008    Rename Pacific/Enderbury to Pacific/Kanton.
1009    Correct many pre-1993 transitions in Malawi, Portugal, etc.
1010    zic now creates each output file or link atomically.
1011    zic -L no longer omits the POSIX TZ string in its output.
1012    zic fixes for truncation and leap second table expiration.
1013    zic now follows POSIX for TZ strings using all-year DST.
1014    Fix some localtime crashes and bugs in obscure cases.
1015    zdump -v now outputs more-useful boundary cases.
1016    tzfile.5 better matches a draft successor to RFC 8536.
1017    A new file SECURITY.
1018
1019    This release is prompted by recent announcements by Jordan and Samoa.
1020    It incorporates many other changes that had accumulated since 2021a.
1021    However, it omits most proposed changes that merged all Zones
1022    agreeing since 1970, as concerns were raised about doing too many of
1023    these changes at once.  It does keeps some of these changes in the
1024    interest of making tzdb more equitable one step at a time; see
1025    "Merge more location-based Zones" below.
1026
1027  Changes to future timestamps
1028
1029    Jordan now starts DST on February's last Thursday.
1030    (Thanks to Steffen Thorsen.)
1031
1032    Samoa no longer observes DST.  (Thanks to Geoffrey D. Bennett.)
1033
1034  Changes to zone name
1035
1036    Rename Pacific/Enderbury to Pacific/Kanton.  When we added
1037    Enderbury in 1993, we did not know that it is uninhabited and that
1038    Kanton (population two dozen) is the only inhabited location in
1039    that timezone.  The old name is now a backward-compatibility link.
1040
1041  Changes to past timestamps
1042
1043    Correct many pre-1993 transitions, fixing entries originally
1044    derived from Shanks, Whitman, and Mundell.  The fixes include:
1045      - Barbados: standard time was introduced in 1911, not 1932; and
1046	DST was observed in 1942-1944
1047      - Cook Islands: In 1899 they switched from east to west of GMT,
1048	celebrating Christmas for two days.  They (and Niue) switched
1049	to standard time in 1952, not 1901.
1050      - Guyana: corrected LMT for Georgetown; the introduction of
1051	standard time in 1911, not 1915; and corrections to 1975 and
1052	1992 transitions
1053      - Kanton: uninhabited before 1937-08-31
1054      - Niue: only observed -11:20 from 1952 through 1964, then went to
1055        -11 instead of -11:30
1056      - Portugal: DST was observed in 1950
1057      - Tonga: corrected LMT; the introduction of standard time in 1945,
1058        not 1901; and corrections to the transition from +12:20 to +13
1059        in 1961, not 1941
1060    Additional fixes to entries in the 'backzone' file include:
1061      - Enderbury: inhabited only 1860/1885 and 1938-03-06/1942-02-09
1062      - The Gambia: 1933 and 1942 transitions
1063      - Malawi: several 1911 through 1925 transitions
1064      - Sierra Leone: several 1913 through 1941 transitions, and DST
1065	was NOT observed in 1957 through 1962
1066    (Thanks to P Chan, Michael Deckers, Alexander Krivenyshev and
1067    Alois Treindl.)
1068
1069    Merge more location-based Zones whose timestamps agree since 1970,
1070    as pre-1970 timestamps are out of scope.  This is part of a
1071    process that has been ongoing since 2013.  This does not affect
1072    post-1970 timestamps, and timezone historians who build with 'make
1073    PACKRATDATA=backzone' should see no changes to pre-1970 timestamps.
1074    When merging, keep the most-populous location's data, and move
1075    data for other locations to 'backzone' with a backward
1076    link in 'backward'.  For example, move America/Creston data to
1077    'backzone' with a link in 'backward' from America/Phoenix because
1078    the two timezones' timestamps agree since 1970; this change
1079    affects some pre-1968 timestamps in America/Creston because
1080    Creston and Phoenix disagreed before 1968.  The affected Zones
1081    are Africa/Accra, America/Atikokan, America/Blanc-Sablon,
1082    America/Creston, America/Curacao, America/Nassau,
1083    America/Port_of_Spain, Antarctica/DumontDUrville, and
1084    Antarctica/Syowa.
1085
1086  Changes to maintenance procedure
1087
1088    The new file SECURITY covers how to report security-related bugs.
1089
1090    Several backward-compatibility links have been moved to the
1091    'backward' file.  These links, which range from Africa/Addis_Ababa
1092    to Pacific/Saipan, are only for compatibility with now-obsolete
1093    guidelines suggesting an entry for every ISO 3166 code.
1094    The intercontinental convenience links Asia/Istanbul and
1095    Europe/Nicosia have also been moved to 'backward'.
1096
1097  Changes to code
1098
1099    zic now creates each output file or link atomically,
1100    possibly by creating a temporary file and then renaming it.
1101    This avoids races where a TZ setting would temporarily stop
1102    working while zic was installing a replacement file or link.
1103
1104    zic -L no longer omits the POSIX TZ string in its output.
1105    Starting with 2020a, zic -L truncated its output according to the
1106    "Expires" directive or "#expires" comment in the leapseconds file.
1107    The resulting TZif files omitted daylight saving transitions after
1108    the leap second table expired, which led to far less accurate
1109    predictions of times after the expiry.  Although future timestamps
1110    cannot be converted accurately in the presence of leap seconds, it
1111    is more accurate to convert near-future timestamps with a few
1112    seconds error than with an hour error, so zic -L no longer
1113    truncates output in this way.
1114
1115    Instead, when zic -L is given the "Expires" directive, it now
1116    outputs the expiration by appending a no-change entry to the leap
1117    second table.  Although this should work well with most TZif
1118    readers, it does not conform to Internet RFC 8536 and some pickier
1119    clients (including tzdb 2017c through 2021a) reject it, so
1120    "Expires" directives are currently disabled by default.  To enable
1121    them, set the EXPIRES_LINE Makefile variable.  If a TZif file uses
1122    this new feature it is marked with a new TZif version number 4,
1123    a format intended to be documented in a successor to RFC 8536.
1124    The old-format "#expires" comments are now treated solely as
1125    comments and have no effect on the TZif files.
1126
1127    zic -L LEAPFILE -r @LO no longer generates an invalid TZif file
1128    that omits leap second information for the range LO..B when LO
1129    falls between two leap seconds A and B.  Instead, it generates a
1130    TZif version 4 file that represents the previously missing
1131    information.
1132
1133    The TZif reader now allows the leap second table to begin with a
1134    correction other than -1 or +1, and to contain adjacent
1135    transitions with equal corrections.  This supports TZif version 4.
1136
1137    The TZif reader now lets leap seconds occur less than 28 days
1138    apart.  This supports possible future TZif extensions.
1139
1140    Fix bug that caused 'localtime' etc. to crash when TZ was
1141    set to a all-year DST string like "EST5EDT4,0/0,J365/25" that does
1142    not conform to POSIX but does conform to Internet RFC 8536.
1143
1144    Fix another bug that caused 'localtime' etc. to crash when TZ was
1145    set to a POSIX-conforming but unusual TZ string like
1146    "EST5EDT4,0/0,J365/0", where almost all the year is DST.
1147
1148    Fix yet another bug that caused 'localtime' etc. to mishandle slim
1149    TZif files containing leap seconds after the last explicit
1150    transition in the table, or when handling far-future timestamps
1151    in slim TZif files lacking leap seconds.
1152
1153    Fix localtime misbehavior involving positive leap seconds.
1154    This change affects only behavior for "right" system time,
1155    which contains leap seconds, and only if the UT offset is
1156    not a multiple of 60 seconds when a positive leap second occurs.
1157    (No such timezone exists in tzdb, luckily.)  Without the fix,
1158    the timestamp was ambiguous during a positive leap second.
1159    With the fix, any seconds occurring after a positive leap second
1160    and within the same localtime minute are counted through 60, not
1161    through 59; their UT offset (tm_gmtoff) is the same as before.
1162    Here is how the fix affects timestamps in a timezone with UT
1163    offset +01:23:45 (5025 seconds) and with a positive leap second at
1164    1972-06-30 23:59:60 UTC (78796800):
1165
1166	time_t    without the fix      with the fix
1167	78796800  1972-07-01 01:23:45  1972-07-01 01:23:45 (leap second)
1168	78796801  1972-07-01 01:23:45  1972-07-01 01:23:46
1169	...
1170	78796815  1972-07-01 01:23:59  1972-07-01 01:23:60
1171	78796816  1972-07-01 01:24:00  1972-07-01 01:24:00
1172
1173    Fix an unlikely bug that caused 'localtime' etc. to misbehave if
1174    civil time changes a few seconds before time_t wraps around, when
1175    leap seconds are enabled.
1176
1177    Fix bug in zic -r; in some cases, the dummy time type after the
1178    last time transition disagreed with the TZ string, contrary to
1179    Internet RFC 8563 section 3.3.
1180
1181    Fix a bug with 'zic -r @X' when X is a negative leap second that
1182    has a nonnegative correction.  Without the fix, the output file
1183    was truncated so that X appeared to be a positive leap second.
1184    Fix a similar, even less likely bug when truncating at a positive
1185    leap second that has a nonpositive correction.
1186
1187    zic -r now reports an error if given rolling leap seconds, as this
1188    usage has never generally worked and is evidently unused.
1189
1190    zic now generates a POSIX-conforming TZ string for TZif files
1191    where all-year DST is predicted for the indefinite future.
1192    For example, for all-year Eastern Daylight Time, zic now generates
1193    "XXX3EDT4,0/0,J365/23" where it previously generated
1194    "EST5EDT,0/0,J365/25" or "".  (Thanks to Michael Deckers for
1195    noting the possibility of POSIX conformance.)
1196
1197    zic.c no longer requires sys/wait.h (thanks to spazmodius for
1198    noting it wasn't needed).
1199
1200    When reading slim TZif files, zdump no longer mishandles leap
1201    seconds on the rare platforms where time_t counts leap seconds,
1202    fixing a bug introduced in 2014g.
1203
1204    zdump -v now outputs timestamps at boundaries of what localtime
1205    and gmtime can represent, instead of the less useful timestamps
1206    one day after the minimum and one day before the maximum.
1207    (Thanks to Arthur David Olson for prototype code, and to Manuela
1208    Friedrich for debugging help.)
1209
1210    zdump's -c and -t options are now consistently inclusive for the
1211    lower time bound and exclusive for the upper.  Formerly they were
1212    inconsistent.  (Confusion noted by Martin Burnicki.)
1213
1214  Changes to build procedure
1215
1216    You can now compile with -DHAVE_MALLOC_ERRNO=0 to port to
1217    non-POSIX hosts where malloc doesn't set errno.
1218    (Problem reported by Jan Engelhardt.)
1219
1220  Changes to documentation
1221
1222    tzfile.5 better matches a draft successor to RFC 8536
1223    <https://datatracker.ietf.org/doc/draft-murchison-rfc8536bis/01/>.
1224
1225
1226Release 2021a - 2021-01-24 10:54:57 -0800
1227
1228  Changes to future timestamps
1229
1230    South Sudan changes from +03 to +02 on 2021-02-01 at 00:00.
1231    (Thanks to Steffen Thorsen.)
1232
1233
1234Release 2020f - 2020-12-29 00:17:46 -0800
1235
1236  Change to build procedure
1237
1238    'make rearguard_tarballs' no longer generates a bad rearguard.zi,
1239    fixing a 2020e bug.  (Problem reported by Deborah Goldsmith.)
1240
1241
1242Release 2020e - 2020-12-22 15:14:34 -0800
1243
1244  Briefly:
1245    Volgograd switches to Moscow time on 2020-12-27 at 02:00.
1246
1247  Changes to future timestamps
1248
1249    Volgograd changes time zone from +04 to +03 on 2020-12-27 at 02:00.
1250    (Thanks to Alexander Krivenyshev and Stepan Golosunov.)
1251
1252  Changes to past timestamps
1253
1254    Correct many pre-1986 transitions, fixing entries originally
1255    derived from Shanks.  The fixes include:
1256      - Australia: several 1917 through 1971 transitions
1257      - The Bahamas: several 1941 through 1945 transitions
1258      - Bermuda: several 1917 through 1956 transitions
1259      - Belize: several 1942 through 1968 transitions
1260      - Ghana: several 1915 through 1956 transitions
1261      - Israel and Palestine: several 1940 through 1985 transitions
1262      - Kenya and adjacent: several 1908 through 1960 transitions
1263      - Nigeria and adjacent: correcting LMT in Lagos, and several 1905
1264        through 1919 transitions
1265      - Seychelles: the introduction of standard time in 1907, not 1906
1266      - Vanuatu: DST in 1973-1974, and a corrected 1984 transition
1267    (Thanks to P Chan.)
1268
1269    Because of the Australia change, Australia/Currie (King Island) is
1270    no longer needed, as it is identical to Australia/Hobart for all
1271    timestamps since 1970 and was therefore created by mistake.
1272    Australia/Currie has been moved to the 'backward' file and its
1273    corrected data moved to the 'backzone' file.
1274
1275  Changes to past time zone abbreviations and DST flags
1276
1277    To better match legislation in Turks and Caicos, the 2015 shift to
1278    year-round observance of -04 is now modeled as AST throughout before
1279    returning to Eastern Time with US DST in 2018, rather than as
1280    maintaining EDT until 2015-11-01.  (Thanks to P Chan.)
1281
1282  Changes to documentation
1283
1284    The zic man page now documents zic's coalescing of transitions
1285    when a zone falls back just before DST springs forward.
1286
1287
1288Release 2020d - 2020-10-21 11:24:13 -0700
1289
1290  Briefly:
1291    Palestine ends DST earlier than predicted, on 2020-10-24.
1292
1293  Changes to past and future timestamps
1294
1295    Palestine ends DST on 2020-10-24 at 01:00, instead of 2020-10-31
1296    as previously predicted (thanks to Sharef Mustafa.)  Its
1297    2019-10-26 fall-back was at 00:00, not 01:00 (thanks to Steffen
1298    Thorsen.)  Its 2015-10-23 transition was at 01:00 not 00:00, and
1299    its spring 2020 transition was on March 28 at 00:00, not March 27
1300    (thanks to Pierre Cashon.)  This affects Asia/Gaza and
1301    Asia/Hebron.  Assume future spring and fall transitions will be on
1302    the Saturday preceding the last Sunday of March and October,
1303    respectively.
1304
1305
1306Release 2020c - 2020-10-16 11:15:53 -0700
1307
1308  Briefly:
1309    Fiji starts DST later than usual, on 2020-12-20.
1310
1311  Changes to future timestamps
1312
1313    Fiji will start DST on 2020-12-20, instead of 2020-11-08 as
1314    previously predicted.  DST will still end on 2021-01-17.
1315    (Thanks to Raymond Kumar and Alan Mintz.)  Assume for now that
1316    the later-than-usual start date is a one-time departure from the
1317    recent pattern.
1318
1319  Changes to build procedure
1320
1321    Rearguard tarballs now contain an empty file pacificnew.
1322    Some older downstream software expects this file to exist.
1323    (Problem reported by Mike Cullinan.)
1324
1325
1326Release 2020b - 2020-10-06 18:35:04 -0700
1327
1328  Briefly:
1329    Revised predictions for Morocco's changes starting in 2023.
1330    Canada's Yukon changes to -07 on 2020-11-01, not 2020-03-08.
1331    Macquarie Island has stayed in sync with Tasmania since 2011.
1332    Casey, Antarctica is at +08 in winter and +11 in summer.
1333    zic no longer supports -y, nor the TYPE field of Rules.
1334
1335  Changes to future timestamps
1336
1337    Morocco's spring-forward after Ramadan is now predicted to occur
1338    no sooner than two days after Ramadan, instead of one day.
1339    (Thanks to Milamber.)  The first altered prediction is for 2023,
1340    now predicted to spring-forward on April 30 instead of April 23.
1341
1342  Changes to past and future timestamps
1343
1344   Casey Station, Antarctica has been using +08 in winter and +11 in
1345   summer since 2018.  The most recent transition from +08 to +11 was
1346   2020-10-04 00:01.  Also, Macquarie Island has been staying in
1347   sync with Tasmania since 2011.  (Thanks to Steffen Thorsen.)
1348
1349  Changes to past and future time zone abbreviations and DST flags
1350
1351    Canada's Yukon, represented by America/Whitehorse and
1352    America/Dawson, changes its time zone rules from -08/-07 to
1353    permanent -07 on 2020-11-01, not on 2020-03-08 as 2020a had it.
1354    This change affects only the time zone abbreviation (MST vs PDT)
1355    and daylight saving flag for the period between the two dates.
1356    (Thanks to Andrew G. Smith.)
1357
1358  Changes to past timestamps
1359
1360    Correct several transitions for Hungary for 1918/1983.
1361    For example, the 1983-09-25 fall-back was at 01:00, not 03:00.
1362    (Thanks to Géza Nyáry.)  Also, the 1890 transition to standard
1363    time was on 11-01, not 10-01 (thanks to Michael Deckers).
1364
1365    The 1891 French transition was on March 16, not March 15.  The
1366    1911-03-11 French transition was at midnight, not a minute later.
1367    Monaco's transitions were on 1892-06-01 and 1911-03-29, not
1368    1891-03-15 and 1911-03-11.  (Thanks to Michael Deckers.)
1369
1370  Changes to code
1371
1372    Support for zic's long-obsolete '-y YEARISTYPE' option has been
1373    removed and, with it, so has support for the TYPE field in Rule
1374    lines, which is now reserved for compatibility with earlier zic.
1375    These features were previously deprecated in release 2015f.
1376    (Thanks to Tim Parenti.)
1377
1378    zic now defaults to '-b slim' instead of to '-b fat'.
1379
1380    zic's new '-l -' and '-p -' options uninstall any existing
1381    localtime and posixrules files, respectively.
1382
1383    The undocumented and ineffective tzsetwall function has been
1384    removed.
1385
1386  Changes to build procedure
1387
1388    The Makefile now defaults POSIXRULES to '-', so the posixrules
1389    feature (obsolete as of 2019b) is no longer installed by default.
1390
1391  Changes to documentation and commentary
1392
1393    The long-obsolete files pacificnew, systemv, and yearistype.sh have
1394    been removed from the distribution.  (Thanks to Tim Parenti.)
1395
1396
1397Release 2020a - 2020-04-23 16:03:47 -0700
1398
1399  Briefly:
1400    Morocco springs forward on 2020-05-31, not 2020-05-24.
1401    Canada's Yukon advanced to -07 year-round on 2020-03-08.
1402    America/Nuuk renamed from America/Godthab.
1403    zic now supports expiration dates for leap second lists.
1404
1405  Changes to future timestamps
1406
1407    Morocco's second spring-forward transition in 2020 will be May 31,
1408    not May 24 as predicted earlier.  (Thanks to Semlali Naoufal.)
1409    Adjust future-year predictions to use the first Sunday after the
1410    day after Ramadan, not the first Sunday after Ramadan.
1411
1412    Canada's Yukon, represented by America/Whitehorse and
1413    America/Dawson, advanced to -07 year-round, beginning with its
1414    spring-forward transition on 2020-03-08, and will not fall back on
1415    2020-11-01.  Although a government press release calls this
1416    "permanent Pacific Daylight Saving Time", we prefer MST for
1417    consistency with nearby Dawson Creek, Creston, and Fort Nelson.
1418    (Thanks to Tim Parenti.)
1419
1420  Changes to past timestamps
1421
1422    Shanghai observed DST in 1919.  (Thanks to Phake Nick.)
1423
1424  Changes to timezone identifiers
1425
1426    To reflect current usage in English better, America/Godthab has
1427    been renamed to America/Nuuk.  A backwards-compatibility link
1428    remains for the old name.
1429
1430  Changes to code
1431
1432    localtime.c no longer mishandles timestamps after the last
1433    transition in a TZif file with leap seconds and with daylight
1434    saving time transitions projected into the indefinite future.
1435    For example, with TZ='America/Los_Angeles' with leap seconds,
1436    zdump formerly reported a DST transition on 2038-03-14
1437    from 01:59:32.999... to 02:59:33 instead of the correct transition
1438    from 01:59:59.999... to 03:00:00.
1439
1440    zic -L now supports an Expires line in the leapseconds file, and
1441    truncates the TZif output accordingly.  This propagates leap
1442    second expiration information into the TZif file, and avoids the
1443    abovementioned localtime.c bug as well as similar bugs present in
1444    many client implementations.  If no Expires line is present, zic
1445    -L instead truncates the TZif output based on the #expires comment
1446    present in leapseconds files distributed by tzdb 2018f and later;
1447    however, this usage is obsolescent.  For now, the distributed
1448    leapseconds file has an Expires line that is commented out, so
1449    that the file can be fed to older versions of zic which ignore the
1450    commented-out line.  Future tzdb distributions are planned to
1451    contain a leapseconds file with an Expires line.
1452
1453    The configuration macros HAVE_TZNAME and USG_COMPAT should now be
1454    set to 1 if the system library supports the feature, and 2 if not.
1455    As before, these macros are nonzero if tzcode should support the
1456    feature, zero otherwise.
1457
1458    The configuration macro ALTZONE now has the same values with the
1459    same meaning as HAVE_TZNAME and USG_COMPAT.
1460
1461    The code's defense against CRLF in leap-seconds.list is now
1462    portable to POSIX awk.  (Problem reported by Deborah Goldsmith.)
1463
1464    Although the undocumented tzsetwall function is not changed in
1465    this release, it is now deprecated in preparation for removal in
1466    future releases.  Due to POSIX requirements, tzsetwall has not
1467    worked for some time.  Any code that uses it should instead use
1468    tzalloc(NULL) or, if portability trumps thread-safety, should
1469    unset the TZ environment variable.
1470
1471  Changes to commentary
1472
1473    The Îles-de-la-Madeleine and the Listuguj reserve are noted as
1474    following America/Halifax, and comments about Yukon's "south" and
1475    "north" have been corrected to say "east" and "west".  (Thanks to
1476    Jeffery Nichols.)
1477
1478
1479Release 2019c - 2019-09-11 08:59:48 -0700
1480
1481  Briefly:
1482    Fiji observes DST from 2019-11-10 to 2020-01-12.
1483    Norfolk Island starts observing Australian-style DST.
1484
1485  Changes to future timestamps
1486
1487    Fiji's next DST transitions will be 2019-11-10 and 2020-01-12
1488    instead of 2019-11-03 and 2020-01-19.  (Thanks to Raymond Kumar.)
1489    Adjust future guesses accordingly.
1490
1491    Norfolk Island will observe Australian-style DST starting in
1492    spring 2019.  The first transition is on 2019-10-06.  (Thanks to
1493    Kyle Czech and Michael Deckers.)
1494
1495  Changes to past timestamps
1496
1497    Many corrections to time in Turkey from 1940 through 1985.
1498    (Thanks to Oya Vulaş via Alois Treindl, and to Kıvanç Yazan.)
1499
1500    The Norfolk Island 1975-03-02 transition was at 02:00 standard
1501    time, not 02:00 DST.  (Thanks to Michael Deckers.)
1502
1503    South Korea observed DST from 1948 through 1951.  Although this
1504    info was supposed to appear in release 2014j, a typo inadvertently
1505    suppressed the change.  (Thanks to Alois Treindl.)
1506
1507    Detroit observed DST in 1967 and 1968 following the US DST rules,
1508    except that its 1967 DST began on June 14 at 00:01.  (Thanks to
1509    Alois Treindl for pointing out that the old data entries were
1510    probably wrong.)
1511
1512    Fix several errors in pre-1970 transitions in Perry County, IN.
1513    (Thanks to Alois Treindl for pointing out the 1967/9 errors.)
1514
1515    Edmonton did not observe DST in 1967 or 1969.  In 1946 Vancouver
1516    ended DST on 09-29 not 10-13, and Vienna ended DST on 10-07 not
1517    10-06.  In 1945 Königsberg (now Kaliningrad) switched from +01/+02
1518    to +02/+03 on 04-10 not 01-01, and its +02/+03 is abbreviated
1519    EET/EEST, not CET/CEST.  (Thanks to Alois Treindl.)  In 1946
1520    Königsberg switched to +03 on 04-07 not 01-01.
1521
1522    In 1946 Louisville switched from CST to CDT on 04-28 at 00:01, not
1523    01-01 at 00:00.  (Thanks to Alois Treindl and Michael Deckers.)
1524    Also, it switched from CST to CDT on 1950-04-30, not 1947-04-27.
1525
1526    The 1892-05-01 transition in Brussels was at 00:17:30, not at noon.
1527    (Thanks to Michael Deckers.)
1528
1529  Changes to past time zone abbreviations and DST flags
1530
1531    Hong Kong Winter Time, observed from 1941-10-01 to 1941-12-25,
1532    is now flagged as DST and is abbreviated HKWT not HKT.
1533
1534  Changes to code
1535
1536    leapseconds.awk now relies only on its input data, rather than
1537    also relying on its comments.  (Inspired by code from Dennis
1538    Ferguson and Chris Woodbury.)
1539
1540    The code now defends against CRLFs in leap-seconds.list.
1541    (Thanks to Brian Inglis and Chris Woodbury.)
1542
1543  Changes to documentation and commentary
1544
1545    theory.html discusses leap seconds.  (Thanks to Steve Summit.)
1546
1547    Nashville's newspapers dueled about the time of day in the 1950s.
1548    (Thanks to John Seigenthaler.)
1549
1550    Liechtenstein observed Swiss DST in 1941/2.
1551    (Thanks to Alois Treindl.)
1552
1553
1554Release 2019b - 2019-07-01 00:09:53 -0700
1555
1556  Briefly:
1557    Brazil no longer observes DST.
1558    'zic -b slim' outputs smaller TZif files; please try it out.
1559    Palestine's 2019 spring-forward transition was on 03-29, not 03-30.
1560
1561  Changes to future timestamps
1562
1563    Brazil has canceled DST and will stay on standard time indefinitely.
1564    (Thanks to Steffen Thorsen, Marcus Diniz, and Daniel Soares de
1565    Oliveira.)
1566
1567    Predictions for Morocco now go through 2087 instead of 2037, to
1568    work around a problem on newlib when using TZif files output by
1569    zic 2019a or earlier.  (Problem reported by David Gauchard.)
1570
1571  Changes to past and future timestamps
1572
1573    Palestine's 2019 spring transition was 03-29 at 00:00, not 03-30
1574    at 01:00.  (Thanks to Sharef Mustafa and Even Scharning.)  Guess
1575    future transitions to be March's last Friday at 00:00.
1576
1577  Changes to past timestamps
1578
1579    Hong Kong's 1941-06-15 spring-forward transition was at 03:00, not
1580    03:30.  Its 1945 transition from JST to HKT was on 11-18 at 02:00,
1581    not 09-15 at 00:00.  In 1946 its spring-forward transition was on
1582    04-21 at 00:00, not the previous day at 03:30.  From 1946 through
1583    1952 its fall-back transitions occurred at 04:30, not at 03:30.
1584    In 1947 its fall-back transition was on 11-30, not 12-30.
1585    (Thanks to P Chan.)
1586
1587  Changes to past time zone abbreviations
1588
1589    Italy's 1866 transition to Rome Mean Time was on December 12, not
1590    September 22.  This affects only the time zone abbreviation for
1591    Europe/Rome between those dates.  (Thanks to Stephen Trainor and
1592    Luigi Rosa.)
1593
1594  Changes affecting metadata only
1595
1596    Add info about the Crimea situation in zone1970.tab and zone.tab.
1597    (Problem reported by Serhii Demediuk.)
1598
1599  Changes to code
1600
1601    zic's new -b option supports a way to control data bloat and to
1602    test for year-2038 bugs in software that reads TZif files.
1603    'zic -b fat' and 'zic -b slim' generate larger and smaller output;
1604    for example, changing from fat to slim shrinks the Europe/London
1605    file from 3648 to 1599 bytes, saving about 56%.  Fat and slim
1606    files represent the same set of timestamps and use the same TZif
1607    format as documented in tzfile(5) and in Internet RFC 8536.
1608    Fat format attempts to work around bugs or incompatibilities in
1609    older software, notably software that mishandles 64-bit TZif data
1610    or uses obsolete TZ strings like "EET-2EEST" that lack DST rules.
1611    Slim format is more efficient and does not work around 64-bit bugs
1612    or obsolete TZ strings.  Currently zic defaults to fat format
1613    unless you compile with -DZIC_BLOAT_DEFAULT=\"slim\"; this
1614    out-of-the-box default is intended to change in future releases
1615    as the buggy software often mishandles timestamps anyway.
1616
1617    zic no longer treats a set of rules ending in 2037 specially.
1618    Previously, zic assumed that such a ruleset meant that future
1619    timestamps could not be predicted, and therefore omitted a
1620    POSIX-like TZ string in the TZif output.  The old behavior is no
1621    longer needed for current tzdata, and caused problems with newlib
1622    when used with older tzdata (reported by David Gauchard).
1623
1624    zic no longer generates some artifact transitions.  For example,
1625    Europe/London no longer has a no-op transition in January 1996.
1626
1627  Changes to build procedure
1628
1629    tzdata.zi now assumes zic 2017c or later.  This shrinks tzdata.zi
1630    by a percent or so.
1631
1632  Changes to documentation and commentary
1633
1634    The Makefile now documents the POSIXRULES macro as being obsolete,
1635    and similarly, zic's -p POSIXRULES option is now documented as
1636    being obsolete.  Although the POSIXRULES feature still exists and
1637    works as before, in practice it is rarely used for its intended
1638    purpose, and it does not work either in the default reference
1639    implementation (for timestamps after 2037) or in common
1640    implementations such as GNU/Linux (for contemporary timestamps).
1641    Since POSIXRULES was designed primarily as a temporary transition
1642    facility for System V platforms that died off decades ago, it is
1643    being decommissioned rather than institutionalized.
1644
1645    New info on Bonin Islands and Marcus (thanks to Wakaba and Phake Nick).
1646
1647
1648Release 2019a - 2019-03-25 22:01:33 -0700
1649
1650  Briefly:
1651    Palestine "springs forward" on 2019-03-30 instead of 2019-03-23.
1652    Metlakatla "fell back" to rejoin Alaska Time on 2019-01-20 at 02:00.
1653
1654  Changes to past and future timestamps
1655
1656    Palestine will not start DST until 2019-03-30, instead of 2019-03-23 as
1657    previously predicted.  Adjust our prediction by guessing that spring
1658    transitions will be between 24 and 30 March, which matches recent practice
1659    since 2016.  (Thanks to Even Scharning and Tim Parenti.)
1660
1661    Metlakatla ended its observance of Pacific standard time,
1662    rejoining Alaska Time, on 2019-01-20 at 02:00.  (Thanks to Ryan
1663    Stanley and Tim Parenti.)
1664
1665  Changes to past timestamps
1666
1667    Israel observed DST in 1980 (08-02/09-13) and 1984 (05-05/08-25).
1668    (Thanks to Alois Treindl and Isaac Starkman.)
1669
1670  Changes to time zone abbreviations
1671
1672    Etc/UCT is now a backward-compatibility link to Etc/UTC, instead
1673    of being a separate zone that generates the abbreviation "UCT",
1674    which nowadays is typically a typo.  (Problem reported by Isiah
1675    Meadows.)
1676
1677  Changes to code
1678
1679    zic now has an -r option to limit the time range of output data.
1680    For example, 'zic -r @1000000000' limits the output data to
1681    timestamps starting 1000000000 seconds after the Epoch.
1682    This helps shrink output size and can be useful for applications
1683    not needing the full timestamp history, such as TZDIST truncation;
1684    see Internet RFC 8536 section 5.1.  (Inspired by a feature request
1685    from Christopher Wong, helped along by bug reports from Wong and
1686    from Tim Parenti.)
1687
1688  Changes to documentation
1689
1690    Mention Internet RFC 8536 (February 2019), which documents TZif.
1691
1692    tz-link.html now cites tzdata-meta
1693    <https://tzdata-meta.timtimeonline.com/>.
1694
1695
1696Release 2018i - 2018-12-30 11:05:43 -0800
1697
1698  Briefly:
1699    São Tomé and Príncipe switches from +01 to +00 on 2019-01-01.
1700
1701  Changes to future timestamps
1702
1703    Due to a change in government, São Tomé and Príncipe switches back
1704    from +01 to +00 on 2019-01-01 at 02:00.  (Thanks to Vadim
1705    Nasardinov and Michael Deckers.)
1706
1707
1708Release 2018h - 2018-12-23 17:59:32 -0800
1709
1710  Briefly:
1711    Qyzylorda, Kazakhstan moved from +06 to +05 on 2018-12-21.
1712    New zone Asia/Qostanay because Qostanay, Kazakhstan didn't move.
1713    Metlakatla, Alaska observes PST this winter only.
1714    Guess Morocco will continue to adjust clocks around Ramadan.
1715    Add predictions for Iran from 2038 through 2090.
1716
1717  Changes to future timestamps
1718
1719    Guess that Morocco will continue to fall back just before and
1720    spring forward just after Ramadan, the practice since 2012.
1721    (Thanks to Maamar Abdelkader.)  This means Morocco will observe
1722    negative DST during Ramadan in main and vanguard formats, and in
1723    rearguard format it stays in the +00 timezone and observes
1724    ordinary DST in all months other than Ramadan.  As before, extend
1725    this guesswork to the year 2037.  As a consequence, Morocco is
1726    scheduled to observe three DST transitions in some Gregorian years
1727    (e.g., 2033) due to the mismatch between the Gregorian and Islamic
1728    calendars.
1729
1730    The table of exact transitions for Iranian DST has been extended.
1731    It formerly cut off before the year 2038 in a nod to 32-bit time_t.
1732    It now cuts off before 2091 as there is doubt about how the Persian
1733    calendar will treat 2091.  This change predicts DST transitions in
1734    2038-9, 2042-3, and 2046-7 to occur one day later than previously
1735    predicted.  As before, post-cutoff transitions are approximated.
1736
1737  Changes to past and future timestamps
1738
1739    Qyzylorda (aka Kyzylorda) oblast in Kazakhstan moved from +06 to
1740    +05 on 2018-12-21.  This is a zone split as Qostanay (aka
1741    Kostanay) did not switch, so create a zone Asia/Qostanay.
1742
1743    Metlakatla moved from Alaska to Pacific standard time on 2018-11-04.
1744    It did not change clocks that day and remains on -08 this winter.
1745    (Thanks to Ryan Stanley.)  It will revert to the usual Alaska
1746    rules next spring, so this change affects only timestamps
1747    from 2018-11-04 through 2019-03-10.
1748
1749  Change to past timestamps
1750
1751    Kwajalein's 1993-08-20 transition from -12 to +12 was at 24:00,
1752    not 00:00.  I transcribed the time incorrectly from Shanks.
1753    (Thanks to Phake Nick.)
1754
1755    Nauru's 1979 transition was on 02-10 at 02:00, not 05-01 at 00:00.
1756    (Thanks to Phake Nick.)
1757
1758    Guam observed DST irregularly from 1959 through 1977.
1759    (Thanks to Phake Nick.)
1760
1761    Hong Kong observed DST in 1941 starting 06-15 (not 04-01), then on
1762    10-01 changed standard time to +08:30 (not +08).  Its transition
1763    back to +08 after WWII was on 1945-09-15, not the previous day.
1764    Its 1904-10-30 change took effect at 01:00 +08 (not 00:00 LMT).
1765    (Thanks to Phake Nick, Steve Allen, and Joseph Myers.)  Also,
1766    its 1952 fallback was on 11-02 (not 10-25).
1767
1768    This release contains many changes to timestamps before 1946 due
1769    to Japanese possession or occupation of Pacific/Chuuk,
1770    Pacific/Guam, Pacific/Kosrae, Pacific/Kwajalein, Pacific/Majuro,
1771    Pacific/Nauru, Pacific/Palau, and Pacific/Pohnpei.
1772    (Thanks to Phake Nick.)
1773
1774    Assume that the Spanish East Indies was like the Philippines and
1775    observed American time until the end of 1844.  This affects
1776    Pacific/Chuuk, Pacific/Kosrae, Pacific/Palau, and Pacific/Pohnpei.
1777
1778  Changes to past tm_isdst flags
1779
1780    For the recent Morocco change, the tm_isdst flag should be 1 from
1781    2018-10-27 00:00 to 2018-10-28 03:00.  (Thanks to Michael Deckers.)
1782    Give a URL to the official decree.  (Thanks to Matt Johnson.)
1783
1784
1785Release 2018g - 2018-10-26 22:22:45 -0700
1786
1787  Briefly:
1788    Morocco switches to permanent +01 on 2018-10-28.
1789
1790  Changes to future timestamps
1791
1792    Morocco switches from +00/+01 to permanent +01 effective 2018-10-28,
1793    so its clocks will not fall back as previously scheduled.
1794    (Thanks to Mohamed Essedik Najd and Brian Inglis.)
1795
1796  Changes to code
1797
1798    When generating TZif files with leap seconds, zic no longer uses a
1799    format that trips up older 32-bit clients, fixing a bug introduced
1800    in 2018f.  (Reported by Daniel Fischer.)  Also, the zic workaround
1801    for QTBUG-53071 now also works for TZif files with leap seconds.
1802
1803    The translator to rearguard format now rewrites the line
1804    "Rule Japan 1948 1951 - Sep Sat>=8 25:00 0 S" to
1805    "Rule Japan 1948 1951 - Sep Sun>=9  1:00 0 S".
1806    This caters to zic before 2007 and to Oracle TZUpdater 2.2.0
1807    and earlier.  (Reported by Christos Zoulas.)
1808
1809  Changes to past time zone abbreviations
1810
1811    Change HDT to HWT/HPT for WWII-era abbreviations in Hawaii.
1812    This reverts to 2011h, as the abbreviation change in 2011i was
1813    likely inadvertent.
1814
1815  Changes to documentation
1816
1817    tzfile.5 has new sections on interoperability issues.
1818
1819
1820Release 2018f - 2018-10-18 00:14:18 -0700
1821
1822  Briefly:
1823  Volgograd moves from +03 to +04 on 2018-10-28.
1824  Fiji ends DST 2019-01-13, not 2019-01-20.
1825  Most of Chile changes DST dates, effective 2019-04-06.
1826
1827  Changes to future timestamps
1828
1829    Volgograd moves from +03 to +04 on 2018-10-28 at 02:00.
1830    (Thanks to Alexander Fetisov and Stepan Golosunov.)
1831
1832    Fiji ends DST 2019-01-13 instead of the 2019-01-20 previously
1833    predicted.  (Thanks to Raymond Kumar.)  Adjust future predictions
1834    accordingly.
1835
1836    Most of Chile will end DST on the first Saturday in April at 24:00 mainland
1837    time, and resume DST on the first Saturday in September at 24:00 mainland
1838    time.  The changes are effective from 2019-04-06, and do not affect the
1839    Magallanes region modeled by America/Punta_Arenas.  (Thanks to Juan Correa
1840    and Tim Parenti.)  Adjust future predictions accordingly.
1841
1842  Changes to past timestamps
1843
1844    The 2018-05-05 North Korea 30-minute time zone change took place
1845    at 23:30 the previous day, not at 00:00 that day.
1846
1847    China's 1988 spring-forward transition was on April 17, not
1848    April 10.  Its DST transitions in 1986/91 were at 02:00, not 00:00.
1849    (Thanks to P Chan.)
1850
1851    Fix several issues for Macau before 1992.  Macau's pre-1904 LMT
1852    was off by 10 s.  Macau switched to +08 in 1904 not 1912, and
1853    temporarily switched to +09/+10 during World War II.  Macau
1854    observed DST in 1942/79, not 1961/80, and there were several
1855    errors for transition times and dates.  (Thanks to P Chan.)
1856
1857    The 1948-1951 fallback transitions in Japan were at 25:00 on
1858    September's second Saturday, not at 24:00.  (Thanks to Phake Nick.)
1859    zic turns this into 01:00 on the day after September's second
1860    Saturday, which is the best that POSIX or C platforms can do.
1861
1862    Incorporate 1940-1949 Asia/Shanghai DST transitions from a 2014
1863    paper by Li Yu, replacing more-questionable data from Shanks.
1864
1865  Changes to time zone abbreviations
1866
1867    Use "PST" and "PDT" for Philippine time.  (Thanks to Paul Goyette.)
1868
1869  Changes to code
1870
1871    zic now always generates TZif files where time type 0 is used for
1872    timestamps before the first transition.  This simplifies the
1873    reading of TZif files and should not affect behavior of existing
1874    TZif readers because the same set of time types is used; only
1875    their internal indexes may have changed.  This affects only the
1876    legacy zones EST5EDT, CST6CDT, MST7MDT, PST8PDT, CET, MET, and
1877    EET, which previously used nonzero types for these timestamps.
1878
1879    Because of the type 0 change, zic no longer outputs a dummy
1880    transition at time -2**59 (before the Big Bang), as clients should
1881    no longer need this to handle historical timestamps correctly.
1882    This reverts a change introduced in 2013d and shrinks most TZif
1883    files by a few bytes.
1884
1885    zic now supports negative time-of-day in Rule and Leap lines, e.g.,
1886    "Rule X min max - Apr lastSun -6:00 1:00 -" means the transition
1887    occurs at 18:00 on the Saturday before the last Sunday in April.
1888    This behavior was documented in 2018a but the code did not
1889    entirely match the documentation.
1890
1891    localtime.c no longer requires at least one time type in TZif
1892    files that lack transitions or have a POSIX-style TZ string.  This
1893    future-proofs the code against possible future extensions to the
1894    format that would allow TZif files with POSIX-style TZ strings and
1895    without transitions or time types.
1896
1897    A read-access subscript error in localtime.c has been fixed.
1898    It could occur only in TZif files with timecnt == 0, something that
1899    does not happen in practice now but could happen in future versions.
1900
1901    localtime.c no longer ignores TZif POSIX-style TZ strings that
1902    specify only standard time.  Instead, these TZ strings now
1903    override the default time type for timestamps after the last
1904    transition (or for all timestamps if there are no transitions),
1905    just as DST strings specifying DST have always done.
1906
1907    leapseconds.awk now outputs "#updated" and "#expires" comments,
1908    and supports leap seconds at the ends of months other than June
1909    and December.  (Inspired by suggestions from Chris Woodbury.)
1910
1911  Changes to documentation
1912
1913    New restrictions: A Rule name must start with a character that
1914    is neither an ASCII digit nor "-" nor "+", and an unquoted name
1915    should not use characters in the set "!$%&'()*,/:;<=>?@[\]^`{|}~".
1916    The latter restriction makes room for future extensions (a
1917    possibility noted by Tom Lane).
1918
1919    tzfile.5 now documents what time types apply before the first and
1920    after the last transition, if any.
1921
1922    Documentation now uses the spelling "timezone" for a TZ setting
1923    that determines timestamp history, and "time zone" for a
1924    geographic region currently sharing the same standard time.
1925
1926    The name "TZif" is now used for the tz binary data format.
1927
1928    tz-link.htm now mentions the A0 TimeZone Migration utilities.
1929    (Thanks to Aldrin Martoq for the link.)
1930
1931  Changes to build procedure
1932
1933    New 'make' target 'rearguard_tarballs' to build the rearguard
1934    tarball only.  This is a convenience on platforms that lack lzip
1935    if you want to build the rearguard tarball.  (Problem reported by
1936    Deborah Goldsmith.)
1937
1938    tzdata.zi is now more stable from release to release.  (Problem
1939    noted by Tom Lane.)  It is also a bit shorter.
1940
1941    tzdata.zi now can contain comment lines documenting configuration
1942    information, such as which data format was selected, which input
1943    files were used, and how leap seconds are treated.  (Problems
1944    noted by Lester Caine and Brian Inglis.)  If the Makefile defaults
1945    are used these comment lines are absent, for backward
1946    compatibility.  A redistributor intending to alter its copy of the
1947    files should also append "-LABEL" to the 'version' file's first
1948    line, where "LABEL" identifies the redistributor's change.
1949
1950
1951Release 2018e - 2018-05-01 23:42:51 -0700
1952
1953  Briefly:
1954
1955    North Korea switches back to +09 on 2018-05-05.
1956    The main format uses negative DST again, for Ireland etc.
1957    'make tarballs' now also builds a rearguard tarball.
1958    New 's' and 'd' suffixes in SAVE columns of Rule and Zone lines.
1959
1960  Changes to past and future timestamps
1961
1962    North Korea switches back from +0830 to +09 on 2018-05-05.
1963    (Thanks to Kang Seonghoon, Arthur David Olson, Seo Sanghyeon,
1964    and Tim Parenti.)
1965
1966    Bring back the negative-DST changes of 2018a, except be more
1967    compatible with data parsers that do not support negative DST.
1968    Also, this now affects historical timestamps in Namibia and the
1969    former Czechoslovakia, not just Ireland.  The main format now uses
1970    negative DST to model timestamps in Europe/Dublin (from 1971 on),
1971    Europe/Prague (1946/7), and Africa/Windhoek (1994/2017).  This
1972    does not affect UT offsets, only time zone abbreviations and the
1973    tm_isdst flag.  Also, this does not affect rearguard or vanguard
1974    formats; effectively the main format now uses vanguard instead of
1975    rearguard format.  Data parsers that do not support negative DST
1976    can still use data from the rearguard tarball described below.
1977
1978  Changes to build procedure
1979
1980    The command 'make tarballs' now also builds the tarball
1981    tzdataVERSION-rearguard.tar.gz, which is like tzdataVERSION.tar.gz
1982    except that it uses rearguard format intended for trailing-edge
1983    data parsers.
1984
1985  Changes to data format and to code
1986
1987    The SAVE column of Rule and Zone lines can now have an 's' or 'd'
1988    suffix, which specifies whether the adjusted time is standard time
1989    or daylight saving time.  If no suffix is given, daylight saving
1990    time is used if and only if the SAVE column is nonzero; this is
1991    the longstanding behavior.  Although this new feature is not used
1992    in tzdata, it could be used to specify the legal time in Namibia
1993    1994-2017, as opposed to the popular time (see below).
1994
1995  Changes to past timestamps
1996
1997    From 1994 through 2017 Namibia observed DST in winter, not summer.
1998    That is, it used negative DST, as Ireland still does.  This change
1999    does not affect UTC offsets; it affects only the tm_isdst flag and
2000    the abbreviation used during summer, which is now CAT, not WAST.
2001    Although (as noted by Michael Deckers) summer and winter time were
2002    both simply called "standard time" in Namibian law, in common
2003    practice winter time was considered to be DST (as noted by Stephen
2004    Colebourne).  The full effect of this change is only in vanguard
2005    and main format; in rearguard format, the tm_isdst flag is still
2006    zero in winter and nonzero in summer.
2007
2008    In 1946/7 Czechoslovakia also observed negative DST in winter.
2009    The full effect of this change is only in vanguard and main
2010    formats; in rearguard format, it is modeled as plain GMT without
2011    daylight saving.  Also, the dates of some 1944/5 DST transitions
2012    in Czechoslovakia have been changed.
2013
2014
2015Release 2018d - 2018-03-22 07:05:46 -0700
2016
2017  Briefly:
2018
2019  Palestine starts DST a week earlier in 2018.
2020  Add support for vanguard and rearguard data consumers.
2021  Add subsecond precision to source data format, though not to data.
2022
2023  Changes to future timestamps
2024
2025    In 2018, Palestine starts DST on March 24, not March 31.
2026    Adjust future predictions accordingly.  (Thanks to Sharef Mustafa.)
2027
2028  Changes to past and future timestamps
2029
2030    Casey Station in Antarctica changed from +11 to +08 on 2018-03-11
2031    at 04:00.  (Thanks to Steffen Thorsen.)
2032
2033  Changes to past timestamps
2034
2035    Historical transitions for Uruguay, represented by
2036    America/Montevideo, have been updated per official legal documents,
2037    replacing previous data mainly originating from the inventions of
2038    Shanks & Pottenger.  This has resulted in adjustments ranging from
2039    30 to 90 minutes in either direction over at least two dozen
2040    distinct periods ranging from one day to several years in length.
2041    A mere handful of pre-1991 transitions are unaffected; data since
2042    then has come from more reliable contemporaneous reporting.  These
2043    changes affect various timestamps in 1920-1923, 1936, 1939,
2044    1942-1943, 1959, 1966-1970, 1972, 1974-1980, and 1988-1990.
2045    Additionally, Uruguay's pre-standard-time UT offset has been
2046    adjusted westward by 7 seconds, from UT-03:44:44 to UT-03:44:51, to
2047    match the location of the Observatory of the National Meteorological
2048    Institute in Montevideo.
2049    (Thanks to Jeremie Bonjour, Tim Parenti, and Michael Deckers.)
2050
2051    East Kiribati skipped New Year's Eve 1994, not New Year's Day 1995.
2052    (Thanks to Kerry Shetline.)
2053
2054    Fix the 1912-01-01 transition for Portugal and its colonies.
2055    This transition was at 00:00 according to the new UT offset, not
2056    according to the old one.  Also assume that Cape Verde switched on
2057    the same date as the rest, not in 1907.  This affects
2058    Africa/Bissau, Africa/Sao_Tome, Asia/Macau, Atlantic/Azores,
2059    Atlantic/Cape_Verde, Atlantic/Madeira, and Europe/Lisbon.
2060    (Thanks to Michael Deckers.)
2061
2062    Fix an off-by-1 error for pre-1913 timestamps in Jamaica and in
2063    Turks & Caicos.
2064
2065  Changes to past time zone abbreviations
2066
2067    MMT took effect in Uruguay from 1908-06-10, not 1898-06-28.  There
2068    is no clock change associated with the transition.
2069
2070  Changes to build procedure
2071
2072    The new DATAFORM macro in the Makefile lets the installer choose
2073    among three source data formats.  The idea is to lessen downstream
2074    disruption when data formats are improved.
2075
2076    * DATAFORM=vanguard installs from the latest, bleeding-edge
2077      format.  DATAFORM=main (the default) installs from the format
2078      used in the 'africa' etc. files.  DATAFORM=rearguard installs
2079      from a trailing-edge format.  Eventually, elements of today's
2080      vanguard format should move to the main format, and similarly
2081      the main format's features should eventually move to the
2082      rearguard format.
2083
2084    * In the current version, the main and rearguard formats are
2085      identical and match that of 2018c, so this change does not
2086      affect default behavior.  The vanguard format currently contains
2087      one feature not in the main format: negative SAVE values.  This
2088      improves support for Ireland, which uses Irish Standard Time
2089      (IST, UTC+01) in summer and GMT (UTC) in winter.  tzcode has
2090      supported negative SAVE values for decades, and this feature
2091      should move to the main format soon.  However, it will not move
2092      to the rearguard format for quite some time because some
2093      downstream parsers do not support it.
2094
2095    * The build procedure constructs three files vanguard.zi, main.zi,
2096      and rearguard.zi, one for each format.  Although the files
2097      represent essentially the same data, they may have minor
2098      discrepancies that users are not likely to notice.  The files
2099      are intended for downstream data consumers and are not
2100      installed.  Zoneinfo parsers that do not support negative SAVE values
2101      should start using rearguard.zi, so that they will be unaffected
2102      when the negative-DST feature moves from vanguard to main.
2103      Bleeding-edge Zoneinfo parsers that support the new features
2104      already can use vanguard.zi; in this respect, current tzcode is
2105      bleeding-edge.
2106
2107    The Makefile should now be safe for parallelized builds, and 'make
2108    -j to2050new.tzs' is now much faster on a multiprocessor host
2109    with GNU Make.
2110
2111    When built with -DSUPPRESS_TZDIR, the tzcode library no longer
2112    prepends TZDIR/ to file names that do not begin with '/'.  This is
2113    not recommended for general use, due to its security implications.
2114    (From a suggestion by Manuela Friedrich.)
2115
2116  Changes to code
2117
2118    zic now accepts subsecond precision in expressions like
2119    00:19:32.13, which is approximately the legal time of the
2120    Netherlands from 1835 to 1937.  However, because it is
2121    questionable whether the few recorded uses of non-integer offsets
2122    had subsecond precision in practice, there are no plans for tzdata
2123    to use this feature.  (Thanks to Steve Allen for pointing out
2124    the limitations of historical data in this area.)
2125
2126    The code is a bit more portable to MS-Windows.  Installers can
2127    compile with -DRESERVE_STD_EXT_IDS on MS-Windows platforms that
2128    reserve identifiers like 'localtime'.  (Thanks to Manuela
2129    Friedrich.)
2130
2131  Changes to documentation and commentary
2132
2133    theory.html now outlines tzdb's extensions to POSIX's model for
2134    civil time, and has a section "POSIX features no longer needed"
2135    that lists POSIX API components that are now vestigial.
2136    (From suggestions by Steve Summit.)  It also better distinguishes
2137    time zones from tz regions.  (From a suggestion by Guy Harris.)
2138
2139    Commentary is now more consistent about using the phrase "daylight
2140    saving time", to match the C name tm_isdst.  Daylight saving time
2141    need not occur in summer, and need not have a positive offset from
2142    standard time.
2143
2144    Commentary about historical transitions in Uruguay has been expanded
2145    with links to many relevant legal documents.
2146    (Thanks to Tim Parenti.)
2147
2148    Commentary now uses some non-ASCII characters with Unicode value
2149    less than U+0100, as they can be useful and should work even with
2150    older editors such as XEmacs.
2151
2152
2153Release 2018c - 2018-01-22 23:00:44 -0800
2154
2155  Briefly:
2156  Revert Irish changes that relied on negative SAVE values.
2157
2158  Changes to tm_isdst
2159
2160    Revert the 2018a change to Europe/Dublin.  As before, this change
2161    does not affect UT offsets or abbreviations; it affects only
2162    whether timestamps are considered to be standard time or
2163    daylight-saving time, as expressed in the tm_isdst flag of C's
2164    struct tm type.  This reversion is intended to be a temporary
2165    workaround for problems discovered with downstream uses of
2166    releases 2018a and 2018b, which implemented Irish time by using
2167    negative SAVE values in the Eire rules of the 'europe' file.
2168    Although negative SAVE values have been part of tzcode for many
2169    years and are supported by many platforms, they were not
2170    documented before 2018a and ICU and OpenJDK do not currently
2171    support them.  A mechanism to export data to platforms lacking
2172    support for negative DST is planned to be developed before the
2173    change is reapplied.  (Problems reported by Deborah Goldsmith and
2174    Stephen Colebourne.)
2175
2176  Changes to past timestamps
2177
2178    Japanese DST transitions (1948-1951) were Sundays at 00:00, not
2179    Saturdays or Sundays at 02:00.  (Thanks to Takayuki Nikai.)
2180
2181  Changes to build procedure
2182
2183    The build procedure now works around mawk 1.3.3's lack of support
2184    for character class expressions.  (Problem reported by Ohyama.)
2185
2186
2187Release 2018b - 2018-01-17 23:24:48 -0800
2188
2189  Briefly:
2190  Fix a packaging problem in tz2018a, which was missing 'pacificnew'.
2191
2192  Changes to build procedure
2193
2194    The distribution now contains the file 'pacificnew' again.
2195    This file was inadvertently omitted in the 2018a distribution.
2196    (Problem reported by Matias Fonzo.)
2197
2198
2199Release 2018a - 2018-01-12 22:29:21 -0800
2200
2201  Briefly:
2202  São Tomé and Príncipe switched from +00 to +01.
2203  Brazil's DST will now start on November's first Sunday.
2204  Ireland's standard time is now in the summer, not the winter.
2205  Use Debian-style installation locations, instead of 4.3BSD-style.
2206  New zic option -t.
2207
2208  Changes to past and future timestamps
2209
2210    São Tomé and Príncipe switched from +00 to +01 on 2018-01-01 at
2211    01:00.  (Thanks to Steffen Thorsen and Michael Deckers.)
2212
2213  Changes to future timestamps
2214
2215    Starting in 2018 southern Brazil will begin DST on November's
2216    first Sunday instead of October's third Sunday.  (Thanks to
2217    Steffen Thorsen.)
2218
2219  Changes to past timestamps
2220
2221    A discrepancy of 4 s in timestamps before 1931 in South Sudan has
2222    been corrected.  The 'backzone' and 'zone.tab' files did not agree
2223    with the 'africa' and 'zone1970.tab' files.  (Problem reported by
2224    Michael Deckers.)
2225
2226    The abbreviation invented for Bolivia Summer Time (1931-2) is now
2227    BST instead of BOST, to be more consistent with the convention
2228    used for Latvian Summer Time (1918-9) and for British Summer Time.
2229
2230  Changes to tm_isdst
2231
2232    Change Europe/Dublin so that it observes Irish Standard Time (UT
2233    +01) in summer and GMT (as negative daylight-saving) in winter,
2234    instead of observing standard time (GMT) in winter and Irish
2235    Summer Time (UT +01) in summer.  This change does not affect UT
2236    offsets or abbreviations; it affects only whether timestamps are
2237    considered to be standard time or daylight-saving time, as
2238    expressed in the tm_isdst flag of C's struct tm type.
2239    (Discrepancy noted by Derick Rethans.)
2240
2241  Changes to build procedure
2242
2243    The default installation locations have been changed to mostly
2244    match Debian circa 2017, instead of being designed as an add-on to
2245    4.3BSD circa 1986.  This affects the Makefile macros TOPDIR,
2246    TZDIR, MANDIR, and LIBDIR.  New Makefile macros TZDEFAULT, USRDIR,
2247    USRSHAREDIR, BINDIR, ZDUMPDIR, and ZICDIR let installers tailor
2248    locations more precisely.  (This responds to suggestions from
2249    Brian Inglis and from Steve Summit.)
2250
2251    The default installation procedure no longer creates the
2252    backward-compatibility link US/Pacific-New, which causes
2253    confusion during user setup (e.g., see Debian bug 815200).
2254    Use 'make BACKWARD="backward pacificnew"' to create the link
2255    anyway, for now.  Eventually we plan to remove the link entirely.
2256
2257    tzdata.zi now contains a version-number comment.
2258    (Suggested by Tom Lane.)
2259
2260    The Makefile now quotes values like BACKWARD more carefully when
2261    passing them to the shell.  (Problem reported by Zefram.)
2262
2263    Builders no longer need to specify -DHAVE_SNPRINTF on platforms
2264    that have snprintf and use pre-C99 compilers.  (Problem reported
2265    by Jon Skeet.)
2266
2267  Changes to code
2268
2269    zic has a new option -t FILE that specifies the location of the
2270    file that determines local time when TZ is unset.  The default for
2271    this location can be configured via the new TZDEFAULT makefile
2272    macro, which defaults to /etc/localtime.
2273
2274    Diagnostics and commentary now distinguish UT from UTC more
2275    carefully; see theory.html for more information about UT vs UTC.
2276
2277    zic has been ported to GCC 8's -Wstringop-truncation option.
2278    (Problem reported by Martin Sebor.)
2279
2280  Changes to documentation and commentary
2281
2282    The zic man page now documents the longstanding behavior that
2283    times and years can be out of the usual range, with negative times
2284    counting backwards from midnight and with year 0 preceding year 1.
2285    (Problem reported by Michael Deckers.)
2286
2287    The theory.html file now mentions the POSIX limit of six chars
2288    per abbreviation, and lists alphabetic abbreviations used.
2289
2290    The files tz-art.htm and tz-link.htm have been renamed to
2291    tz-art.html and tz-link.html, respectively, for consistency with
2292    other file names and to simplify web server configuration.
2293
2294
2295Release 2017c - 2017-10-20 14:49:34 -0700
2296
2297  Briefly:
2298  Northern Cyprus switches from +03 to +02/+03 on 2017-10-29.
2299  Fiji ends DST 2018-01-14, not 2018-01-21.
2300  Namibia switches from +01/+02 to +02 on 2018-04-01.
2301  Sudan switches from +03 to +02 on 2017-11-01.
2302  Tonga likely switches from +13/+14 to +13 on 2017-11-05.
2303  Turks & Caicos switches from -04 to -05/-04 on 2018-11-04.
2304  A new file tzdata.zi now holds a small text copy of all data.
2305  The zic input format has been regularized slightly.
2306
2307  Changes to future timestamps
2308
2309    Northern Cyprus has decided to resume EU rules starting
2310    2017-10-29, thus reinstituting winter time.
2311
2312    Fiji ends DST 2018-01-14 instead of the 2018-01-21 previously
2313    predicted.  (Thanks to Dominic Fok.)  Adjust future predictions
2314    accordingly.
2315
2316    Namibia will switch from +01 with DST to +02 all year on
2317    2017-09-03 at 02:00.  This affects UT offsets starting 2018-04-01
2318    at 02:00.  (Thanks to Steffen Thorsen.)
2319
2320    Sudan will switch from +03 to +02 on 2017-11-01.  (Thanks to Ahmed
2321    Atyya and Yahia Abdalla.)  South Sudan is not switching, so
2322    Africa/Juba is no longer a link to Africa/Khartoum.
2323
2324    Tonga has likely ended its experiment with DST, and will not
2325    adjust its clocks on 2017-11-05.  Although Tonga has not announced
2326    whether it will continue to observe DST, the IATA is assuming that
2327    it will not.  (Thanks to David Wade.)
2328
2329    Turks & Caicos will switch from -04 all year to -05 with US DST on
2330    2018-03-11 at 03:00.  This affects UT offsets starting 2018-11-04
2331    at 02:00.  (Thanks to Steffen Thorsen.)
2332
2333  Changes to past timestamps
2334
2335    Namibia switched from +02 to +01 on 1994-03-21, not 1994-04-03.
2336    (Thanks to Arthur David Olson.)
2337
2338    Detroit did not observe DST in 1967.
2339
2340    Use railway time for Asia/Kolkata before 1941, by switching to
2341    Madras local time (UT +052110) in 1870, then to IST (UT +0530) in
2342    1906.  Also, treat 1941-2's +0630 as DST, like 1942-5.
2343
2344    Europe/Dublin's 1946 and 1947 fallback transitions occurred at
2345    02:00 standard time, not 02:00 DST.  (Thanks to Michael Deckers.)
2346
2347    Pacific/Apia and Pacific/Pago_Pago switched from Antipodean to
2348    American time in 1892, not 1879.  (Thanks to Michael Deckers.)
2349
2350    Adjust the 1867 transition in Alaska to better reflect the
2351    historical record, by changing it to occur on 1867-10-18 at 15:30
2352    Sitka time rather than at the start of 1867-10-17 local time.
2353    Although strictly speaking this is accurate only for Sitka,
2354    the rest of Alaska's blanks need to be filled in somehow.
2355
2356    Fix off-by-one errors in UT offsets for Adak and Nome before 1867.
2357    (Thanks to Michael Deckers.)
2358
2359    Add 7 s to the UT offset in Asia/Yangon before 1920.
2360
2361  Changes to zone names
2362
2363    Remove Canada/East-Saskatchewan from the 'backward' file, as it
2364    exceeded the 14-character limit and was an unused misnomer anyway.
2365
2366  Changes to build procedure
2367
2368    To support applications that prefer to read time zone data in text
2369    form, two zic input files tzdata.zi and leapseconds are now
2370    installed by default.  The commands 'zic tzdata.zi' and 'zic -L
2371    leapseconds tzdata.zi' can reproduce the tzdata binary files
2372    without and with leap seconds, respectively.  To prevent these two
2373    new files from being installed, use 'make TZDATA_TEXT=', and to
2374    suppress leap seconds from the tzdata text installation, use 'make
2375    TZDATA_TEXT=tzdata.zi'.
2376
2377    'make BACKWARD=' now suppresses backward-compatibility names
2378    like 'US/Pacific' that are defined in the 'backward' and
2379    'pacificnew' files.
2380
2381    'make check' now works on systems that lack a UTF-8 locale,
2382    or that lack the nsgmls program.  Set UTF8_LOCALE to configure
2383    the name of a UTF-8 locale, if you have one.
2384
2385    Y2K runtime checks are no longer enabled by default.  Add
2386    -DDEPRECATE_TWO_DIGIT_YEARS to CFLAGS to enable them, instead of
2387    adding -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU
2388    to disable them.  (New name suggested by Brian Inglis.)
2389
2390    The build procedure for zdump now works on AIX 7.1.
2391    (Problem reported by Kees Dekker.)
2392
2393  Changes to code
2394
2395    zic and the reference runtime now reject multiple leap seconds
2396    within 28 days of each other, or leap seconds before the Epoch.
2397    As a result, support for double leap seconds, which was
2398    obsolescent and undocumented, has been removed.  Double leap
2399    seconds were an error in the C89 standard; they have never existed
2400    in civil timekeeping.  (Thanks to Robert Elz and Bradley White for
2401    noticing glitches in the code that uncovered this problem.)
2402
2403    zic now warns about use of the obsolescent and undocumented -y
2404    option, and about use of the obsolescent TYPE field of Rule lines.
2405
2406    zic now allows unambiguous abbreviations like "Sa" and "Su" for
2407    weekdays; formerly it rejected them due to a bug.  Conversely, zic
2408    no longer considers non-prefixes to be abbreviations; for example,
2409    it no longer accepts "lF" as an abbreviation for "lastFriday".
2410    Also, zic warns about the undocumented usage with a "last-"
2411    prefix, e.g., "last-Fri".
2412
2413    Similarly, zic now accepts the unambiguous abbreviation "L" for
2414    "Link" in ordinary context and for "Leap" in leap-second context.
2415    Conversely, zic no longer accepts non-prefixes such as "La" as
2416    abbreviations for words like "Leap".
2417
2418    zic no longer accepts leap second lines in ordinary input, or
2419    ordinary lines in leap second input.  Formerly, zic sometimes
2420    warned about this undocumented usage and handled it incorrectly.
2421
2422    The new macro HAVE_TZNAME governs whether the tzname external
2423    variable is exported, instead of USG_COMPAT.  USG_COMPAT now
2424    governs only the external variables "timezone" and "daylight".
2425    This change is needed because the three variables are not in the
2426    same category: although POSIX requires tzname, it specifies the
2427    other two variables as optional.  Also, USG_COMPAT is now 1 or 0:
2428    if not defined, the code attempts to guess it from other macros.
2429
2430    localtime.c and difftime.c no longer require stdio.h, and .c files
2431    other than zic.c no longer require sys/wait.h.
2432
2433    zdump.c no longer assumes snprintf.  (Reported by Jonathan Leffler.)
2434
2435    Calculation of time_t extrema works around a bug in GCC 4.8.4
2436    (Reported by Stan Shebs and Joseph Myers.)
2437
2438    zic.c no longer mistranslates formats of line numbers in non-English
2439    locales.  (Problem reported by Benno Schulenberg.)
2440
2441    Several minor changes have been made to the code to make it a
2442    bit easier to port to MS-Windows and Solaris.  (Thanks to Kees
2443    Dekker for reporting the problems.)
2444
2445  Changes to documentation and commentary
2446
2447    The two new files 'theory.html' and 'calendars' contain the
2448    contents of the removed file 'Theory'.  The goal is to document
2449    tzdb theory more accessibly.
2450
2451    The zic man page now documents abbreviation rules.
2452
2453    tz-link.htm now covers how to apply tzdata changes to clients.
2454    (Thanks to Jorge Fábregas for the AIX link.)  It also mentions MySQL.
2455
2456    The leap-seconds.list URL has been updated to something that is
2457    more reliable for tzdb.  (Thanks to Tim Parenti and Brian Inglis.)
2458
2459Release 2017b - 2017-03-17 07:30:38 -0700
2460
2461  Briefly: Haiti has resumed DST.
2462
2463  Changes to past and future timestamps
2464
2465    Haiti resumed observance of DST in 2017.  (Thanks to Steffen Thorsen.)
2466
2467  Changes to past timestamps
2468
2469    Liberia changed from -004430 to +00 on 1972-01-07, not 1972-05-01.
2470
2471    Use "MMT" to abbreviate Liberia's time zone before 1972, as "-004430"
2472    is one byte over the POSIX limit.  (Problem reported by Derick Rethans.)
2473
2474  Changes to code
2475
2476    The reference localtime implementation now falls back on the
2477    current US daylight-saving transition rules rather than the
2478    1987-2006 rules.  This fallback occurs only when (1) the TZ
2479    environment variable has a value like "AST4ADT" that asks
2480    for daylight saving time but does not specify the rules, (2) there
2481    is no file by that name, and (3) the TZDEFRULES file cannot be
2482    loaded.  (Thanks to Tom Lane.)
2483
2484
2485Release 2017a - 2017-02-28 00:05:36 -0800
2486
2487  Briefly: Southern Chile moves from -04/-03 to -03, and Mongolia
2488  discontinues DST.
2489
2490  Changes to future timestamps
2491
2492    Mongolia no longer observes DST.  (Thanks to Ganbold Tsagaankhuu.)
2493
2494    Chile's Region of Magallanes moves from -04/-03 to -03 year-round.
2495    Its clocks diverge from America/Santiago starting 2017-05-13 at
2496    23:00, hiving off a new zone America/Punta_Arenas.  Although the
2497    Chilean government says this change expires in May 2019, for now
2498    assume it's permanent.  (Thanks to Juan Correa and Deborah
2499    Goldsmith.)  This also affects Antarctica/Palmer.
2500
2501  Changes to past timestamps
2502
2503    Fix many entries for historical timestamps for Europe/Madrid
2504    before 1979, to agree with tables compiled by Pere Planesas of the
2505    National Astronomical Observatory of Spain.  As a side effect,
2506    this changes some timestamps for Africa/Ceuta before 1929, which
2507    are probably guesswork anyway.  (Thanks to Steve Allen and
2508    Pierpaolo Bernardi for the heads-ups, and to Michael Deckers for
2509    correcting the 1901 transition.)
2510
2511    Ecuador observed DST from 1992-11-28 to 1993-02-05.
2512    (Thanks to Alois Treindl.)
2513
2514    Asia/Atyrau and Asia/Oral were at +03 (not +04) before 1930-06-21.
2515    (Thanks to Stepan Golosunov.)
2516
2517  Changes to past and future time zone abbreviations
2518
2519    Switch to numeric time zone abbreviations for South America, as
2520    part of the ongoing project of removing invented abbreviations.
2521    This avoids the need to invent an abbreviation for the new Chilean
2522    new zone.  Similarly, switch from invented to numeric time zone
2523    abbreviations for Afghanistan, American Samoa, the Azores,
2524    Bangladesh, Bhutan, the British Indian Ocean Territory, Brunei,
2525    Cape Verde, Chatham Is, Christmas I, Cocos (Keeling) Is, Cook Is,
2526    Dubai, East Timor, Eucla, Fiji, French Polynesia, Greenland,
2527    Indochina, Iran, Iraq, Kiribati, Lord Howe, Macquarie, Malaysia,
2528    the Maldives, Marshall Is, Mauritius, Micronesia, Mongolia,
2529    Myanmar, Nauru, Nepal, New Caledonia, Niue, Norfolk I, Palau,
2530    Papua New Guinea, the Philippines, Pitcairn, Qatar, Réunion, St
2531    Pierre & Miquelon, Samoa, Saudi Arabia, Seychelles, Singapore,
2532    Solomon Is, Tokelau, Tuvalu, Wake, Vanuatu, Wallis & Futuna, and
2533    Xinjiang; for 20-minute daylight saving time in Ghana before 1943;
2534    for half-hour daylight saving time in Belize before 1944 and in
2535    the Dominican Republic before 1975; and for Canary Islands before
2536    1946, for Guinea-Bissau before 1975, for Iceland before 1969, for
2537    Indian Summer Time before 1942, for Indonesia before around 1964,
2538    for Kenya before 1960, for Liberia before 1973, for Madeira before
2539    1967, for Namibia before 1943, for the Netherlands in 1937-9, for
2540    Pakistan before 1971, for Western Sahara before 1977, and for
2541    Zaporozhye in 1880-1924.
2542
2543    For Alaska time from 1900 through 1967, instead of "CAT" use the
2544    abbreviation "AST", the abbreviation commonly used at the time
2545    (Atlantic Standard Time had not been standardized yet).  Use "AWT"
2546    and "APT" instead of the invented abbreviations "CAWT" and "CAPT".
2547
2548    Use "CST" and "CDT" instead of invented abbreviations for Macau
2549    before 1999 and Taiwan before 1938, and use "JST" instead of the
2550    invented abbreviation "JCST" for Japan and Korea before 1938.
2551
2552  Change to database entry category
2553
2554    Move the Pacific/Johnston link from 'australasia' to 'backward',
2555    since Johnston is now uninhabited.
2556
2557  Changes to code
2558
2559    zic no longer mishandles some transitions in January 2038 when it
2560    attempts to work around Qt bug 53071.  This fixes a bug affecting
2561    Pacific/Tongatapu that was introduced in zic 2016e.  localtime.c
2562    now contains a workaround, useful when loading a file generated by
2563    a buggy zic.  (Problem and localtime.c fix reported by Bradley
2564    White.)
2565
2566    zdump -i now outputs non-hour numeric time zone abbreviations
2567    without a colon, e.g., "+0530" rather than "+05:30".  This agrees
2568    with zic %z and with common practice, and simplifies auditing of
2569    zdump output.
2570
2571    zdump is now buildable again with -DUSE_LTZ=0.
2572    (Problem reported by Joseph Myers.)
2573
2574    zdump.c now always includes private.h, to avoid code duplication
2575    with private.h.  (Problem reported by Kees Dekker.)
2576
2577    localtime.c no longer mishandles early or late timestamps
2578    when TZ is set to a POSIX-style string that specifies DST.
2579    (Problem reported by Kees Dekker.)
2580
2581    date and strftime now cause %z to generate "-0000" instead of
2582    "+0000" when the UT offset is zero and the time zone abbreviation
2583    begins with "-".
2584
2585  Changes to documentation and commentary
2586
2587    The 'Theory' file now better documents choice of historical time
2588    zone abbreviations.  (Problems reported by Michael Deckers.)
2589
2590    tz-link.htm now covers leap smearing, which is popular in clouds.
2591
2592
2593Release 2016j - 2016-11-22 23:17:13 -0800
2594
2595  Briefly: Saratov, Russia moves from +03 to +04 on 2016-12-04.
2596
2597  Changes to future timestamps
2598
2599    Saratov, Russia switches from +03 to +04 on 2016-12-04 at 02:00.
2600    This hives off a new zone Europe/Saratov from Europe/Volgograd.
2601    (Thanks to Yuri Konotopov and Stepan Golosunov.)
2602
2603  Changes to past timestamps
2604
2605    The new zone Asia/Atyrau for Atyraū Region, Kazakhstan, is like
2606    Asia/Aqtau except it switched from +05/+06 to +04/+05 in spring
2607    1999, not fall 1994.  (Thanks to Stepan Golosunov.)
2608
2609  Changes to past time zone abbreviations
2610
2611    Asia/Gaza and Asia/Hebron now use "EEST", not "EET", to denote
2612    summer time before 1948.  The old use of "EET" was a typo.
2613
2614  Changes to code
2615
2616    zic no longer mishandles file systems that lack hard links, fixing
2617    bugs introduced in 2016g.  (Problems reported by Tom Lane.)
2618    Also, when the destination already contains symbolic links, zic
2619    should now work better on systems where the 'link' system call
2620    does not follow symbolic links.
2621
2622  Changes to documentation and commentary
2623
2624    tz-link.htm now documents the relationship between release version
2625    numbers and development-repository commit tags.  (Suggested by
2626    Paul Koning.)
2627
2628    The 'Theory' file now documents UT.
2629
2630    iso3166.tab now accents "Curaçao", and commentary now mentions
2631    the names "Cabo Verde" and "Czechia".  (Thanks to Jiří Boháč.)
2632
2633
2634Release 2016i - 2016-11-01 23:19:52 -0700
2635
2636  Briefly: Cyprus split into two time zones on 2016-10-30, and Tonga
2637  reintroduces DST on 2016-11-06.
2638
2639  Changes to future timestamps
2640
2641    Pacific/Tongatapu begins DST on 2016-11-06 at 02:00, ending on
2642    2017-01-15 at 03:00.  Assume future observances in Tonga will be
2643    from the first Sunday in November through the third Sunday in
2644    January, like Fiji.  (Thanks to Pulu ʻAnau.)  Switch to numeric
2645    time zone abbreviations for this zone.
2646
2647  Changes to past and future timestamps
2648
2649    Northern Cyprus is now +03 year round, causing a split in Cyprus
2650    time zones starting 2016-10-30 at 04:00.  This creates a zone
2651    Asia/Famagusta.  (Thanks to Even Scharning and Matt Johnson.)
2652
2653    Antarctica/Casey switched from +08 to +11 on 2016-10-22.
2654    (Thanks to Steffen Thorsen.)
2655
2656  Changes to past timestamps
2657
2658    Several corrections were made for pre-1975 timestamps in Italy.
2659    These affect Europe/Malta, Europe/Rome, Europe/San_Marino, and
2660    Europe/Vatican.
2661
2662    First, the 1893-11-01 00:00 transition in Italy used the new UT
2663    offset (+01), not the old (+00:49:56).  (Thanks to Michael
2664    Deckers.)
2665
2666    Second, rules for daylight saving in Italy were changed to agree
2667    with Italy's National Institute of Metrological Research (INRiM)
2668    except for 1944, as follows (thanks to Pierpaolo Bernardi, Brian
2669    Inglis, and Michael Deckers):
2670
2671      The 1916-06-03 transition was at 24:00, not 00:00.
2672
2673      The 1916-10-01, 1919-10-05, and 1920-09-19 transitions were at
2674      00:00, not 01:00.
2675
2676      The 1917-09-30 and 1918-10-06 transitions were at 24:00, not
2677      01:00.
2678
2679      The 1944-09-17 transition was at 03:00, not 01:00.  This
2680      particular change is taken from Italian law as INRiM's table,
2681      (which says 02:00) appears to have a typo here.  Also, keep the
2682      1944-04-03 transition for Europe/Rome, as Rome was controlled by
2683      Germany then.
2684
2685      The 1967-1970 and 1972-1974 fallback transitions were at 01:00,
2686      not 00:00.
2687
2688  Changes to code
2689
2690    The code should now be buildable on AmigaOS merely by setting the
2691    appropriate Makefile variables.  (From a patch by Carsten Larsen.)
2692
2693
2694Release 2016h - 2016-10-19 23:17:57 -0700
2695
2696  Changes to future timestamps
2697
2698    Asia/Gaza and Asia/Hebron end DST on 2016-10-29 at 01:00, not
2699    2016-10-21 at 00:00.  (Thanks to Sharef Mustafa.)  Predict that
2700    future fall transitions will be on the last Saturday of October
2701    at 01:00, which is consistent with predicted spring transitions
2702    on the last Saturday of March.  (Thanks to Tim Parenti.)
2703
2704  Changes to past timestamps
2705
2706    In Turkey, transitions in 1986-1990 were at 01:00 standard time
2707    not at 02:00, and the spring 1994 transition was on March 20, not
2708    March 27.  (Thanks to Kıvanç Yazan.)
2709
2710  Changes to past and future time zone abbreviations
2711
2712    Asia/Colombo now uses numeric time zone abbreviations like "+0530"
2713    instead of alphabetic ones like "IST" and "LKT".  Various
2714    English-language sources use "IST", "LKT" and "SLST", with no
2715    working consensus.  (Usage of "SLST" mentioned by Sadika
2716    Sumanapala.)
2717
2718  Changes to code
2719
2720    zic no longer mishandles relativizing file names when creating
2721    symbolic links like /etc/localtime, when these symbolic links
2722    are outside the usual directory hierarchy.  This fixes a bug
2723    introduced in 2016g.  (Problem reported by Andreas Stieger.)
2724
2725  Changes to build procedure
2726
2727    New rules 'traditional_tarballs' and 'traditional_signatures' for
2728    building just the traditional-format distribution.  (Requested by
2729    Deborah Goldsmith.)
2730
2731    The file 'version' is now put into the tzdata tarball too.
2732    (Requested by Howard Hinnant.)
2733
2734  Changes to documentation and commentary
2735
2736    The 'Theory' file now has a section on interface stability.
2737    (Requested by Paul Koning.)  It also mentions features like
2738    tm_zone and localtime_rz that have long been supported by the
2739    reference code.
2740
2741    tz-link.htm has improved coverage of time zone boundaries suitable
2742    for geolocation.  (Thanks to heads-ups from Evan Siroky and Matt
2743    Johnson.)
2744
2745    The US commentary now mentions Allen and the "day of two noons".
2746
2747    The Fiji commentary mentions the government's 2016-10-03 press
2748    release.  (Thanks to Raymond Kumar.)
2749
2750
2751Release 2016g - 2016-09-13 08:56:38 -0700
2752
2753  Changes to future timestamps
2754
2755    Turkey switched from EET/EEST (+02/+03) to permanent +03,
2756    effective 2016-09-07.  (Thanks to Burak AYDIN.)  Use "+03" rather
2757    than an invented abbreviation for the new time.
2758
2759    New leap second 2016-12-31 23:59:60 UTC as per IERS Bulletin C 52.
2760    (Thanks to Tim Parenti.)
2761
2762  Changes to past timestamps
2763
2764    For America/Los_Angeles, spring-forward transition times have been
2765    corrected from 02:00 to 02:01 in 1948, and from 02:00 to 01:00 in
2766    1950-1966.
2767
2768    For zones using Soviet time on 1919-07-01, transitions to UT-based
2769    time were at 00:00 UT, not at 02:00 local time.  The affected
2770    zones are Europe/Kirov, Europe/Moscow, Europe/Samara, and
2771    Europe/Ulyanovsk.  (Thanks to Alexander Belopolsky.)
2772
2773  Changes to past and future time zone abbreviations
2774
2775    The Factory zone now uses the time zone abbreviation -00 instead
2776    of a long English-language string, as -00 is now the normal way to
2777    represent an undefined time zone.
2778
2779    Several zones in Antarctica and the former Soviet Union, along
2780    with zones intended for ships at sea that cannot use POSIX TZ
2781    strings, now use numeric time zone abbreviations instead of
2782    invented or obsolete alphanumeric abbreviations.  The affected
2783    zones are Antarctica/Casey, Antarctica/Davis,
2784    Antarctica/DumontDUrville, Antarctica/Mawson, Antarctica/Rothera,
2785    Antarctica/Syowa, Antarctica/Troll, Antarctica/Vostok,
2786    Asia/Anadyr, Asia/Ashgabat, Asia/Baku, Asia/Bishkek, Asia/Chita,
2787    Asia/Dushanbe, Asia/Irkutsk, Asia/Kamchatka, Asia/Khandyga,
2788    Asia/Krasnoyarsk, Asia/Magadan, Asia/Omsk, Asia/Sakhalin,
2789    Asia/Samarkand, Asia/Srednekolymsk, Asia/Tashkent, Asia/Tbilisi,
2790    Asia/Ust-Nera, Asia/Vladivostok, Asia/Yakutsk, Asia/Yekaterinburg,
2791    Asia/Yerevan, Etc/GMT-14, Etc/GMT-13, Etc/GMT-12, Etc/GMT-11,
2792    Etc/GMT-10, Etc/GMT-9, Etc/GMT-8, Etc/GMT-7, Etc/GMT-6, Etc/GMT-5,
2793    Etc/GMT-4, Etc/GMT-3, Etc/GMT-2, Etc/GMT-1, Etc/GMT+1, Etc/GMT+2,
2794    Etc/GMT+3, Etc/GMT+4, Etc/GMT+5, Etc/GMT+6, Etc/GMT+7, Etc/GMT+8,
2795    Etc/GMT+9, Etc/GMT+10, Etc/GMT+11, Etc/GMT+12, Europe/Kaliningrad,
2796    Europe/Minsk, Europe/Samara, Europe/Volgograd, and
2797    Indian/Kerguelen.  For Europe/Moscow the invented abbreviation MSM
2798    was replaced by +05, whereas MSK and MSD were kept as they are not
2799    our invention and are widely used.
2800
2801  Changes to zone names
2802
2803    Rename Asia/Rangoon to Asia/Yangon, with a backward compatibility link.
2804    (Thanks to David Massoud.)
2805
2806  Changes to code
2807
2808    zic no longer generates binary files containing POSIX TZ-like
2809    strings that disagree with the local time type after the last
2810    explicit transition in the data.  This fixes a bug with
2811    Africa/Casablanca and Africa/El_Aaiun in some year-2037 timestamps
2812    on the reference platform.  (Thanks to Alexander Belopolsky for
2813    reporting the bug and suggesting a way forward.)
2814
2815    If the installed localtime and/or posixrules files are symbolic
2816    links, zic now keeps them symbolic links when updating them, for
2817    compatibility with platforms like OpenSUSE where other programs
2818    configure these files as symlinks.
2819
2820    zic now avoids hard linking to symbolic links, avoids some
2821    unnecessary mkdir and stat system calls, and uses shorter file
2822    names internally.
2823
2824    zdump has a new -i option to generate transitions in a
2825    smaller but still human-readable format.  This option is
2826    experimental, and the output format may change in future versions.
2827    (Thanks to Jon Skeet for suggesting that an option was needed,
2828    and thanks to Tim Parenti and Chris Rovick for further comments.)
2829
2830  Changes to build procedure
2831
2832    An experimental distribution format is available, in addition
2833    to the traditional format which will continue to be distributed.
2834    The new format is a tarball tzdb-VERSION.tar.lz with signature
2835    file tzdb-VERSION.tar.lz.asc.  It unpacks to a top-level directory
2836    tzdb-VERSION containing the code and data of the traditional
2837    two-tarball format, along with extra data that may be useful.
2838    (Thanks to Antonio Diaz Diaz, Oscar van Vlijmen, and many others
2839    for comments about the experimental format.)
2840
2841    The release version number is now more accurate in the usual case
2842    where releases are built from a Git repository.  For example, if
2843    23 commits and some working-file changes have been made since
2844    release 2016g, the version number is now something like
2845    '2016g-23-g50556e3-dirty' instead of the misleading '2016g'.
2846    Tagged releases use the same version number format as before,
2847    e.g., '2016g'.  To support the more accurate version number, its
2848    specification has moved from a line in the Makefile to a new
2849    source file 'version'.
2850
2851    The experimental distribution contains a file to2050.tzs that
2852    contains what should be the output of 'zdump -i -c 2050' on
2853    primary zones.  If this file is available, 'make check' now checks
2854    that zdump generates this output.
2855
2856    'make check_web' now works on Fedora-like distributions.
2857
2858  Changes to documentation and commentary
2859
2860    tzfile.5 now documents the new restriction on POSIX TZ-like
2861    strings that is now implemented by zic.
2862
2863    Comments now cite URLs for some 1917-1921 Russian DST decrees.
2864    (Thanks to Alexander Belopolsky.)
2865
2866    tz-link.htm mentions JuliaTime (thanks to Curtis Vogt) and Time4J
2867    (thanks to Meno Hochschild) and ThreeTen-Extra, and its
2868    description of Java 8 has been brought up to date (thanks to
2869    Stephen Colebourne).  Its description of local time on Mars has
2870    been updated to match current practice, and URLs have been updated
2871    and some obsolete ones removed.
2872
2873
2874Release 2016f - 2016-07-05 16:26:51 +0200
2875
2876  Changes affecting future timestamps
2877
2878    The Egyptian government changed its mind on short notice, and
2879    Africa/Cairo will not introduce DST starting 2016-07-07 after all.
2880    (Thanks to Mina Samuel.)
2881
2882    Asia/Novosibirsk switches from +06 to +07 on 2016-07-24 at 02:00.
2883    (Thanks to Stepan Golosunov.)
2884
2885  Changes to past and future timestamps
2886
2887    Asia/Novokuznetsk and Asia/Novosibirsk now use numeric time zone
2888    abbreviations instead of invented ones.
2889
2890  Changes affecting past timestamps
2891
2892    Europe/Minsk's 1992-03-29 spring-forward transition was at 02:00 not 00:00.
2893    (Thanks to Stepan Golosunov.)
2894
2895
2896Release 2016e - 2016-06-14 08:46:16 -0700
2897
2898  Changes affecting future timestamps
2899
2900    Africa/Cairo observes DST in 2016 from July 7 to the end of October.
2901    Guess October 27 and 24:00 transitions.  (Thanks to Steffen Thorsen.)
2902    For future years, guess April's last Thursday to October's last
2903    Thursday except for Ramadan.
2904
2905  Changes affecting past timestamps
2906
2907    Locations while uninhabited now use '-00', not 'zzz', as a
2908    placeholder time zone abbreviation.  This is inspired by Internet
2909    RFC 3339 and is more consistent with numeric time zone
2910    abbreviations already used elsewhere.  The change affects several
2911    arctic and antarctic locations, e.g., America/Cambridge_Bay before
2912    1920 and Antarctica/Troll before 2005.
2913
2914    Asia/Baku's 1992-09-27 transition from +04 (DST) to +04 (non-DST) was
2915    at 03:00, not 23:00 the previous day.  (Thanks to Michael Deckers.)
2916
2917  Changes to code
2918
2919    zic now outputs a dummy transition at time 2**31 - 1 in zones
2920    whose POSIX-style TZ strings contain a '<'.  This mostly works
2921    around Qt bug 53071 <https://bugreports.qt.io/browse/QTBUG-53071>.
2922    (Thanks to Zhanibek Adilbekov for reporting the Qt bug.)
2923
2924  Changes affecting documentation and commentary
2925
2926    tz-link.htm says why governments should give plenty of notice for
2927    time zone or DST changes, and refers to Matt Johnson's blog post.
2928
2929    tz-link.htm mentions Tzdata for Elixir.  (Thanks to Matt Johnson.)
2930
2931
2932Release 2016d - 2016-04-17 22:50:29 -0700
2933
2934  Changes affecting future timestamps
2935
2936    America/Caracas switches from -0430 to -04 on 2016-05-01 at 02:30.
2937    (Thanks to Alexander Krivenyshev for the heads-up.)
2938
2939    Asia/Magadan switches from +10 to +11 on 2016-04-24 at 02:00.
2940    (Thanks to Alexander Krivenyshev and Matt Johnson.)
2941
2942    New zone Asia/Tomsk, split off from Asia/Novosibirsk.  It covers
2943    Tomsk Oblast, Russia, which switches from +06 to +07 on 2016-05-29
2944    at 02:00.  (Thanks to Stepan Golosunov.)
2945
2946  Changes affecting past timestamps
2947
2948    New zone Europe/Kirov, split off from Europe/Volgograd.  It covers
2949    Kirov Oblast, Russia, which switched from +04/+05 to +03/+04 on
2950    1989-03-26 at 02:00, roughly a year after Europe/Volgograd made
2951    the same change.  (Thanks to Stepan Golosunov.)
2952
2953    Russia and nearby locations had daylight-saving transitions on
2954    1992-03-29 at 02:00 and 1992-09-27 at 03:00, instead of on
2955    1992-03-28 at 23:00 and 1992-09-26 at 23:00.  (Thanks to Stepan
2956    Golosunov.)
2957
2958    Many corrections to historical time in Kazakhstan from 1991
2959    through 2005.  (Thanks to Stepan Golosunov.)  Replace Kazakhstan's
2960    invented time zone abbreviations with numeric abbreviations.
2961
2962  Changes to commentary
2963
2964    Mention Internet RFCs 7808 (TZDIST) and 7809 (CalDAV time zone references).
2965
2966
2967Release 2016c - 2016-03-23 00:51:27 -0700
2968
2969  Changes affecting future timestamps
2970
2971    Azerbaijan no longer observes DST.  (Thanks to Steffen Thorsen.)
2972
2973    Chile reverts from permanent to seasonal DST.  (Thanks to Juan
2974    Correa for the heads-up, and to Tim Parenti for corrections.)
2975    Guess that future transitions are August's and May's second
2976    Saturdays at 24:00 mainland time.  Also, call the period from
2977    2014-09-07 through 2016-05-14 daylight saving time instead of
2978    standard time, as that seems more appropriate now.
2979
2980  Changes affecting past timestamps
2981
2982    Europe/Kaliningrad and Europe/Vilnius changed from +03/+04 to
2983    +02/+03 on 1989-03-26, not 1991-03-31.  Europe/Volgograd changed
2984    from +04/+05 to +03/+04 on 1988-03-27, not 1989-03-26.
2985    (Thanks to Stepan Golosunov.)
2986
2987  Changes to commentary
2988
2989    Several updates and URLs for historical and proposed Russian changes.
2990    (Thanks to Stepan Golosunov, Matt Johnson, and Alexander Krivenyshev.)
2991
2992
2993Release 2016b - 2016-03-12 17:30:14 -0800
2994
2995  Compatibility note
2996
2997    Starting with release 2016b, some data entries cause zic implementations
2998    derived from tz releases 2005j through 2015e to issue warnings like
2999    "time zone abbreviation differs from POSIX standard (+03)".
3000    These warnings should not otherwise affect zic's output and can safely be
3001    ignored on today's platforms, as the warnings refer to a restriction in
3002    POSIX.1-1988 that was removed in POSIX.1-2001.  One way to suppress the
3003    warnings is to upgrade to zic derived from tz releases 2015f and later.
3004
3005  Changes affecting future timestamps
3006
3007    New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and
3008    Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on
3009    2016-03-27 at 02:00 local time.  They need distinct zones since their
3010    post-1970 histories disagree.  New zone Asia/Barnaul for Altai Krai and
3011    Altai Republic, Russia, which will switch from +06 to +07 on the same date
3012    and local time.  The Astrakhan change is already official; the others have
3013    passed the first reading in the State Duma and are extremely likely.
3014    Also, Asia/Sakhalin moves from +10 to +11 on 2016-03-27 at 02:00.
3015    (Thanks to Alexander Krivenyshev for the heads-up, and to Matt Johnson
3016    and Stepan Golosunov for followup.)
3017
3018    As a trial of a new system that needs less information to be made up,
3019    the new zones use numeric time zone abbreviations like "+04"
3020    instead of invented abbreviations like "ASTT".
3021
3022    Haiti will not observe DST in 2016.  (Thanks to Jean Antoine via
3023    Steffen Thorsen.)
3024
3025    Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00.
3026    (Thanks to Hannah Kreitem.) Guess future transitions will be March's last
3027    Saturday at 01:00, not March's last Friday at 24:00.
3028
3029  Changes affecting past timestamps
3030
3031    Europe/Chisinau observed DST during 1990, and switched from +04 to
3032    +03 at 1990-05-06 02:00, instead of switching from +03 to +02.
3033    (Thanks to Stepan Golosunov.)
3034
3035    1991 abbreviations in Europe/Samara should be SAMT/SAMST, not
3036    KUYT/KUYST.  (Thanks to Stepan Golosunov.)
3037
3038  Changes to code
3039
3040    tzselect's diagnostics and checking, and checktab.awk's checking,
3041    have been improved.  (Thanks to J William Piggott.)
3042
3043    tzcode now builds under MinGW.  (Thanks to Ian Abbott and Esben Haabendal.)
3044
3045    tzselect now tests Julian-date TZ settings more accurately.
3046    (Thanks to J William Piggott.)
3047
3048  Changes to commentary
3049
3050    Comments in zone tables have been improved.  (Thanks to J William Piggott.)
3051
3052    tzselect again limits its menu comments so that menus fit on a
3053    24×80 alphanumeric display.
3054
3055    A new web page tz-how-to.html.  (Thanks to Bill Seymour.)
3056
3057    In the Theory file, the description of possible time zone abbreviations in
3058    tzdata has been cleaned up, as the old description was unclear and
3059    inconsistent.  (Thanks to Alain Mouette for reporting the problem.)
3060
3061
3062Release 2016a - 2016-01-26 23:28:02 -0800
3063
3064  Changes affecting future timestamps
3065
3066    America/Cayman will not observe daylight saving this year after all.
3067    Revert our guess that it would.  (Thanks to Matt Johnson.)
3068
3069    Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00.
3070    (Thanks to Alexander Krivenyshev.)
3071
3072    Asia/Tehran now has DST predictions for the year 2038 and later,
3073    to be March 21 00:00 to September 21 00:00.  This is likely better
3074    than predicting no DST, albeit off by a day every now and then.
3075
3076  Changes affecting past and future timestamps
3077
3078    America/Metlakatla switched from PST all year to AKST/AKDT on
3079    2015-11-01 at 02:00.  (Thanks to Steffen Thorsen.)
3080
3081    America/Santa_Isabel has been removed, and replaced with a
3082    backward compatibility link to America/Tijuana.  Its contents were
3083    apparently based on a misreading of Mexican legislation.
3084
3085  Changes affecting past timestamps
3086
3087    Asia/Karachi's two transition times in 2002 were off by a minute.
3088    (Thanks to Matt Johnson.)
3089
3090  Changes affecting build procedure
3091
3092    An installer can now combine leap seconds with use of the backzone file,
3093    e.g., with 'make PACKRATDATA=backzone REDO=posix_right zones'.
3094    The old 'make posix_packrat' rule is now marked as obsolescent.
3095    (Thanks to Ian Abbott for an initial implementation.)
3096
3097  Changes affecting documentation and commentary
3098
3099    A new file LICENSE makes it easier to see that the code and data
3100    are mostly public-domain.  (Thanks to James Knight.)  The three
3101    non-public-domain files now use the current (3-clause) BSD license
3102    instead of older versions of that license.
3103
3104    tz-link.htm mentions the BDE library (thanks to Andrew Paprocki),
3105    CCTZ (thanks to Tim Parenti), TimeJones.com, and has a new section
3106    on editing tz source files (with a mention of Sublime zoneinfo,
3107    thanks to Gilmore Davidson).
3108
3109    The Theory and asia files now mention the 2015 book "The Global
3110    Transformation of Time, 1870-1950", and cite a couple of reviews.
3111
3112    The America/Chicago entry now documents the informal use of US
3113    central time in Fort Pierre, South Dakota.  (Thanks to Rick
3114    McDermid, Matt Johnson, and Steve Jones.)
3115
3116
3117Release 2015g - 2015-10-01 00:39:51 -0700
3118
3119  Changes affecting future timestamps
3120
3121    Turkey's 2015 fall-back transition is scheduled for Nov. 8, not Oct. 25.
3122    (Thanks to Fatih.)
3123
3124    Norfolk moves from +1130 to +1100 on 2015-10-04 at 02:00 local time.
3125    (Thanks to Alexander Krivenyshev.)
3126
3127    Fiji's 2016 fall-back transition is scheduled for January 17, not 24.
3128    (Thanks to Ken Rylander.)
3129
3130    Fort Nelson, British Columbia will not fall back on 2015-11-01.  It has
3131    effectively been on MST (-0700) since it advanced its clocks on 2015-03-08.
3132    New zone America/Fort_Nelson.  (Thanks to Matt Johnson.)
3133
3134  Changes affecting past timestamps
3135
3136    Norfolk observed DST from 1974-10-27 02:00 to 1975-03-02 02:00.
3137
3138  Changes affecting code
3139
3140    localtime no longer mishandles America/Anchorage after 2037.
3141    (Thanks to Bradley White for reporting the bug.)
3142
3143    On hosts with signed 32-bit time_t, localtime no longer mishandles
3144    Pacific/Fiji after 2038-01-16 14:00 UTC.
3145
3146    The localtime module allows the variables 'timezone', 'daylight',
3147    and 'altzone' to be in common storage shared with other modules,
3148    and declares them in case the system <time.h> does not.
3149    (Problems reported by Kees Dekker.)
3150
3151    On platforms with tm_zone, strftime.c now assumes it is not NULL.
3152    This simplifies the code and is consistent with zdump.c.
3153    (Problem reported by Christos Zoulas.)
3154
3155  Changes affecting documentation
3156
3157   The tzfile man page now documents that transition times denote the
3158   starts (not the ends) of the corresponding time periods.
3159   (Ambiguity reported by Bill Seymour.)
3160
3161
3162Release 2015f - 2015-08-10 18:06:56 -0700
3163
3164  Changes affecting future timestamps
3165
3166    North Korea switches to +0830 on 2015-08-15.  (Thanks to Steffen Thorsen.)
3167    The abbreviation remains "KST".  (Thanks to Robert Elz.)
3168
3169    Uruguay no longer observes DST.  (Thanks to Steffen Thorsen
3170    and Pablo Camargo.)
3171
3172  Changes affecting past and future timestamps
3173
3174    Moldova starts and ends DST at 00:00 UTC, not at 01:00 UTC.
3175    (Thanks to Roman Tudos.)
3176
3177  Changes affecting data format and code
3178
3179    zic's '-y YEARISTYPE' option is no longer documented.  The TYPE
3180    field of a Rule line should now be '-'; the old values 'even',
3181    'odd', 'uspres', 'nonpres', 'nonuspres' were already undocumented.
3182    Although the implementation has not changed, these features do not
3183    work in the default installation, they are not used in the data,
3184    and they are now considered obsolescent.
3185
3186    zic now checks that two rules don't take effect at the same time.
3187    (Thanks to Jon Skeet and Arthur David Olson.)  Constraints on
3188    simultaneity are now documented.
3189
3190    The two characters '%z' in a zone format now stand for the UT
3191    offset, e.g., '-07' for seven hours behind UT and '+0530' for
3192    five hours and thirty minutes ahead.  This better supports time
3193    zone abbreviations conforming to POSIX.1-2001 and later.
3194
3195  Changes affecting installed data files
3196
3197    Comments for America/Halifax and America/Glace_Bay have been improved.
3198    (Thanks to Brian Inglis.)
3199
3200    Data entries have been simplified for Atlantic/Canary, Europe/Simferopol,
3201    Europe/Sofia, and Europe/Tallinn.  This yields slightly smaller
3202    installed data files for Europe/Simferopol and Europe/Tallinn.
3203    It does not affect timestamps.  (Thanks to Howard Hinnant.)
3204
3205  Changes affecting code
3206
3207    zdump and zic no longer warn about valid time zone abbreviations
3208    like '-05'.
3209
3210    Some Visual Studio 2013 warnings have been suppressed.
3211    (Thanks to Kees Dekker.)
3212
3213    'date' no longer sets the time of day and its -a, -d, -n and -t
3214    options have been removed.  Long obsolescent, the implementation
3215    of these features had porting problems.  Builders no longer need
3216    to configure HAVE_ADJTIME, HAVE_SETTIMEOFDAY, or HAVE_UTMPX_H.
3217    (Thanks to Kees Dekker for pointing out the problem.)
3218
3219  Changes affecting documentation
3220
3221    The Theory file mentions naming issues earlier, as these seem to be
3222    poorly publicized (thanks to Gilmore Davidson for reporting the problem).
3223
3224    tz-link.htm mentions Time Zone Database Parser (thanks to Howard Hinnant).
3225
3226    Mention that Herbert Samuel introduced the term "Summer Time".
3227
3228
3229Release 2015e - 2015-06-13 10:56:02 -0700
3230
3231  Changes affecting future timestamps
3232
3233    Morocco will suspend DST from 2015-06-14 03:00 through 2015-07-19 02:00,
3234    not 06-13 and 07-18 as we had guessed.  (Thanks to Milamber.)
3235
3236    Assume Cayman Islands will observe DST starting next year, using US rules.
3237    Although it isn't guaranteed, it is the most likely.
3238
3239  Changes affecting data format
3240
3241    The file 'iso3166.tab' now uses UTF-8, so that its entries can better
3242    spell the names of Åland Islands, Côte d'Ivoire, and Réunion.
3243
3244  Changes affecting code
3245
3246    When displaying data, tzselect converts it to the current locale's
3247    encoding if the iconv command works.  (Problem reported by random832.)
3248
3249    tzselect no longer mishandles Dominica, fixing a bug introduced
3250    in Release 2014f.  (Problem reported by Owen Leibman.)
3251
3252    zic -l no longer fails when compiled with -DTZDEFAULT=\"/etc/localtime\".
3253    This fixes a bug introduced in Release 2014f.
3254    (Problem reported by Leonardo Chiquitto.)
3255
3256
3257Release 2015d - 2015-04-24 08:09:46 -0700
3258
3259  Changes affecting future timestamps
3260
3261    Egypt will not observe DST in 2015 and will consider canceling it
3262    permanently.  For now, assume no DST indefinitely.
3263    (Thanks to Ahmed Nazmy and Tim Parenti.)
3264
3265  Changes affecting past timestamps
3266
3267    America/Whitehorse switched from UT -09 to -08 on 1967-05-28, not
3268    1966-07-01.  Also, Yukon's time zone history is documented better.
3269    (Thanks to Brian Inglis and Dennis Ferguson.)
3270
3271  Change affecting past and future time zone abbreviations
3272
3273    The abbreviations for Hawaii-Aleutian standard and daylight times
3274    have been changed from HAST/HADT to HST/HDT, as per US Government
3275    Printing Office style.  This affects only America/Adak since 1983,
3276    as America/Honolulu was already using the new style.
3277
3278  Changes affecting code
3279
3280   zic has some minor performance improvements.
3281
3282
3283Release 2015c - 2015-04-11 08:55:55 -0700
3284
3285  Changes affecting future timestamps
3286
3287    Egypt's spring-forward transition is at 24:00 on April's last Thursday,
3288    not 00:00 on April's last Friday.  2015's transition will therefore be on
3289    Thursday, April 30 at 24:00, not Friday, April 24 at 00:00.  Similar fixes
3290    apply to 2026, 2037, 2043, etc.  (Thanks to Steffen Thorsen.)
3291
3292  Changes affecting past timestamps
3293
3294    The following changes affect some pre-1991 Chile-related timestamps
3295    in America/Santiago, Antarctica/Palmer, and Pacific/Easter.
3296
3297      The 1910 transition was January 10, not January 1.
3298
3299      The 1918 transition was September 10, not September 1.
3300
3301      The UT -04 time observed from 1932 to 1942 is now considered to
3302      be standard time, not year-round DST.
3303
3304      Santiago observed DST (UT -03) from 1946-07-15 through
3305      1946-08-31, then reverted to standard time, then switched to -05
3306      on 1947-04-01.
3307
3308      Assume transitions before 1968 were at 00:00, since we have no data
3309      saying otherwise.
3310
3311      The spring 1988 transition was 1988-10-09, not 1988-10-02.
3312      The fall 1990 transition was 1990-03-11, not 1990-03-18.
3313
3314      Assume no UT offset change for Pacific/Easter on 1890-01-01,
3315      and omit all transitions on Pacific/Easter from 1942 through 1946
3316      since we have no data suggesting that they existed.
3317
3318    One more zone has been turned into a link, as it differed
3319    from an existing zone only for older timestamps.  As usual,
3320    this change affects UT offsets in pre-1970 timestamps only.
3321    The zone's old contents have been moved to the 'backzone' file.
3322    The affected zone is America/Montreal.
3323
3324  Changes affecting commentary
3325
3326    Mention the TZUpdater tool.
3327
3328    Mention "The Time Now".  (Thanks to Brandon Ramsey.)
3329
3330
3331Release 2015b - 2015-03-19 23:28:11 -0700
3332
3333  Changes affecting future timestamps
3334
3335    Mongolia will start observing DST again this year, from the last
3336    Saturday in March at 02:00 to the last Saturday in September at 00:00.
3337    (Thanks to Ganbold Tsagaankhuu.)
3338
3339    Palestine will start DST on March 28, not March 27.  Also,
3340    correct the fall 2014 transition from September 26 to October 24.
3341    Adjust future predictions accordingly.  (Thanks to Steffen Thorsen.)
3342
3343  Changes affecting past timestamps
3344
3345    The 1982 zone shift in Pacific/Easter has been corrected, fixing a 2015a
3346    regression.  (Thanks to Stuart Bishop for reporting the problem.)
3347
3348    Some more zones have been turned into links, when they differed
3349    from existing zones only for older timestamps.  As usual,
3350    these changes affect UT offsets in pre-1970 timestamps only.
3351    Their old contents have been moved to the 'backzone' file.
3352    The affected zones are: America/Antigua, America/Cayman,
3353    Pacific/Midway, and Pacific/Saipan.
3354
3355  Changes affecting time zone abbreviations
3356
3357    Correct the 1992-2010 DST abbreviation in Volgograd from "MSK" to "MSD".
3358    (Thanks to Hank W.)
3359
3360  Changes affecting code
3361
3362    Fix integer overflow bug in reference 'mktime' implementation.
3363    (Problem reported by Jörg Richter.)
3364
3365    Allow -Dtime_tz=time_t compilations, and allow -Dtime_tz=... libraries
3366    to be used in the same executable as standard-library time_t functions.
3367    (Problems reported by Bradley White.)
3368
3369  Changes affecting commentary
3370
3371    Cite the recent Mexican decree changing Quintana Roo's time zone.
3372    (Thanks to Carlos Raúl Perasso.)
3373
3374    Likewise for the recent Chilean decree.  (Thanks to Eduardo Romero Urra.)
3375
3376    Update info about Mars time.
3377
3378
3379Release 2015a - 2015-01-29 22:35:20 -0800
3380
3381  Changes affecting future timestamps
3382
3383    The Mexican state of Quintana Roo, represented by America/Cancun,
3384    will shift from Central Time with DST to Eastern Time without DST
3385    on 2015-02-01 at 02:00.  (Thanks to Steffen Thorsen and Gwillim Law.)
3386
3387    Chile will not change clocks in April or thereafter; its new standard time
3388    will be its old daylight saving time.  This affects America/Santiago,
3389    Pacific/Easter, and Antarctica/Palmer.  (Thanks to Juan Correa.)
3390
3391    New leap second 2015-06-30 23:59:60 UTC as per IERS Bulletin C 49.
3392    (Thanks to Tim Parenti.)
3393
3394  Changes affecting past timestamps
3395
3396    Iceland observed DST in 1919 and 1921, and its 1939 fallback
3397    transition was Oct. 29, not Nov. 29.  Remove incorrect data from
3398    Shanks about time in Iceland between 1837 and 1908.
3399
3400    Some more zones have been turned into links, when they differed
3401    from existing zones only for older timestamps.  As usual,
3402    these changes affect UT offsets in pre-1970 timestamps only.
3403    Their old contents have been moved to the 'backzone' file.
3404    The affected zones are: Asia/Aden, Asia/Bahrain, Asia/Kuwait,
3405    and Asia/Muscat.
3406
3407  Changes affecting code
3408
3409    tzalloc now scrubs time zone abbreviations compatibly with the way
3410    that tzset always has, by replacing invalid bytes with '_' and by
3411    shortening too-long abbreviations.
3412
3413    tzselect ports to POSIX awk implementations, no longer mishandles
3414    POSIX TZ settings when GNU awk is used, and reports POSIX TZ
3415    settings to the user.  (Thanks to Stefan Kuhn.)
3416
3417  Changes affecting build procedure
3418
3419    'make check' now checks for links to links in the data.
3420    One such link (for Africa/Asmera) has been fixed.
3421    (Thanks to Stephen Colebourne for pointing out the problem.)
3422
3423  Changes affecting commentary
3424
3425    The leapseconds file commentary now mentions the expiration date.
3426    (Problem reported by Martin Burnicki.)
3427
3428    Update Mexican Library of Congress URL.
3429
3430
3431Release 2014j - 2014-11-10 17:37:11 -0800
3432
3433  Changes affecting current and future timestamps
3434
3435    Turks & Caicos' switch from US eastern time to UT -04 year-round
3436    did not occur on 2014-11-02 at 02:00.  It's currently scheduled
3437    for 2015-11-01 at 02:00.  (Thanks to Chris Walton.)
3438
3439  Changes affecting past timestamps
3440
3441    Many pre-1989 timestamps have been corrected for Asia/Seoul and
3442    Asia/Pyongyang, based on sources for the Korean-language Wikipedia
3443    entry for time in Korea.  (Thanks to Sanghyuk Jung.)  Also, no
3444    longer guess that Pyongyang mimicked Seoul time after World War II,
3445    as this is politically implausible.
3446
3447    Some more zones have been turned into links, when they differed
3448    from existing zones only for older timestamps.  As usual,
3449    these changes affect UT offsets in pre-1970 timestamps only.
3450    Their old contents have been moved to the 'backzone' file.
3451    The affected zones are: Africa/Addis_Ababa, Africa/Asmara,
3452    Africa/Dar_es_Salaam, Africa/Djibouti, Africa/Kampala,
3453    Africa/Mogadishu, Indian/Antananarivo, Indian/Comoro, and
3454    Indian/Mayotte.
3455
3456  Changes affecting commentary
3457
3458    The commentary is less enthusiastic about Shanks as a source,
3459    and is more careful to distinguish UT from UTC.
3460
3461
3462Release 2014i - 2014-10-21 22:04:57 -0700
3463
3464  Changes affecting future timestamps
3465
3466    Pacific/Fiji will observe DST from 2014-11-02 02:00 to 2015-01-18 03:00.
3467    (Thanks to Ken Rylander for the heads-up.)  Guess that future
3468    years will use a similar pattern.
3469
3470    A new Zone Pacific/Bougainville, for the part of Papua New Guinea
3471    that plans to switch from UT +10 to +11 on 2014-12-28 at 02:00.
3472    (Thanks to Kiley Walbom for the heads-up.)
3473
3474  Changes affecting time zone abbreviations
3475
3476    Since Belarus is not changing its clocks even though Moscow is,
3477    the time zone abbreviation in Europe/Minsk is changing from FET
3478    to its more traditional value MSK on 2014-10-26 at 01:00.
3479    (Thanks to Alexander Bokovoy for the heads-up about Belarus.)
3480
3481    The new abbreviation IDT stands for the pre-1976 use of UT +08 in
3482    Indochina, to distinguish it better from ICT (+07).
3483
3484  Changes affecting past timestamps
3485
3486    Many timestamps have been corrected for Asia/Ho_Chi_Minh before 1976
3487    (thanks to Trần Ngọc Quân for an indirect pointer to Trần Tiến Bình's
3488    authoritative book).  Asia/Ho_Chi_Minh has been added to
3489    zone1970.tab, to give tzselect users in Vietnam two choices,
3490    since north and south Vietnam disagreed after our 1970 cutoff.
3491
3492    Asia/Phnom_Penh and Asia/Vientiane have been turned into links, as
3493    they differed from existing zones only for older timestamps.  As
3494    usual, these changes affect pre-1970 timestamps only.  Their old
3495    contents have been moved to the 'backzone' file.
3496
3497  Changes affecting code
3498
3499    The time-related library functions now set errno on failure, and
3500    some crashes in the new tzalloc-related library functions have
3501    been fixed.  (Thanks to Christos Zoulas for reporting most of
3502    these problems and for suggesting fixes.)
3503
3504    If USG_COMPAT is defined and the requested timestamp is standard time,
3505    the tz library's localtime and mktime functions now set the extern
3506    variable timezone to a value appropriate for that timestamp; and
3507    similarly for ALTZONE, daylight saving time, and the altzone variable.
3508    This change is a companion to the tzname change in 2014h, and is
3509    designed to make timezone and altzone more compatible with tzname.
3510
3511    The tz library's functions now set errno to EOVERFLOW if they fail
3512    because the result cannot be represented.  ctime and ctime_r now
3513    return NULL and set errno when a timestamp is out of range, rather
3514    than having undefined behavior.
3515
3516    Some bugs associated with the new 2014g functions have been fixed.
3517    This includes a bug that largely incapacitated the new functions
3518    time2posix_z and posix2time_z.  (Thanks to Christos Zoulas.)
3519    It also includes some uses of uninitialized variables after tzalloc.
3520    The new code uses the standard type 'ssize_t', which the Makefile
3521    now gives porting advice about.
3522
3523  Changes affecting commentary
3524
3525    Updated URLs for NRC Canada (thanks to Matt Johnson and Brian Inglis).
3526
3527
3528Release 2014h - 2014-09-25 18:59:03 -0700
3529
3530  Changes affecting past timestamps
3531
3532    America/Jamaica's 1974 spring-forward transition was Jan. 6, not Apr. 28.
3533
3534    Shanks says Asia/Novokuznetsk switched from LMT (not "NMT") on 1924-05-01,
3535    not 1920-01-06.  The old entry was based on a misinterpretation of Shanks.
3536
3537    Some more zones have been turned into links, when they differed
3538    from existing zones only for older timestamps.  As usual,
3539    these changes affect UT offsets in pre-1970 timestamps only.
3540    Their old contents have been moved to the 'backzone' file.
3541    The affected zones are: Africa/Blantyre, Africa/Bujumbura,
3542    Africa/Gaborone, Africa/Harare, Africa/Kigali, Africa/Lubumbashi,
3543    Africa/Lusaka, Africa/Maseru, and Africa/Mbabane.
3544
3545  Changes affecting code
3546
3547    zdump -V and -v now output gmtoff= values on all platforms,
3548    not merely on platforms defining TM_GMTOFF.
3549
3550    The tz library's localtime and mktime functions now set tzname to a value
3551    appropriate for the requested timestamp, and zdump now uses this
3552    on platforms not defining TM_ZONE, fixing a 2014g regression.
3553    (Thanks to Tim Parenti for reporting the problem.)
3554
3555    The tz library no longer sets tzname if localtime or mktime fails.
3556
3557    zdump -c no longer mishandles transitions near year boundaries.
3558    (Thanks to Tim Parenti for reporting the problem.)
3559
3560    An access to uninitialized data has been fixed.
3561    (Thanks to Jörg Richter for reporting the problem.)
3562
3563    When THREAD_SAFE is defined, the code ports to the C11 memory model.
3564    A memory leak has been fixed if ALL_STATE and THREAD_SAFE are defined
3565    and two threads race to initialize data used by gmtime-like functions.
3566    (Thanks to Andy Heninger for reporting the problems.)
3567
3568  Changes affecting build procedure
3569
3570    'make check' now checks better for properly sorted data.
3571
3572  Changes affecting documentation and commentary
3573
3574    zdump's gmtoff=N output is now documented, and its isdst=D output
3575    is now documented to possibly output D values other than 0 or 1.
3576
3577    zdump -c's treatment of years is now documented to use the
3578    Gregorian calendar and Universal Time without leap seconds,
3579    and its behavior at cutoff boundaries is now documented better.
3580    (Thanks to Arthur David Olson and Tim Parenti for reporting the problems.)
3581
3582    Programs are now documented to use the proleptic Gregorian calendar.
3583    (Thanks to Alan Barrett for the suggestion.)
3584
3585    Fractional-second GMT offsets have been documented for civil time
3586    in 19th-century Chennai, Jakarta, and New York.
3587
3588
3589Release 2014g - 2014-08-28 12:31:23 -0700
3590
3591  Changes affecting future timestamps
3592
3593    Turks & Caicos is switching from US eastern time to UT -04
3594    year-round, modeled as a switch on 2014-11-02 at 02:00.
3595    [As noted in 2014j, this switch was later delayed.]
3596
3597  Changes affecting past timestamps
3598
3599    Time in Russia or the USSR before 1926 or so has been corrected by
3600    a few seconds in the following zones: Asia/Irkutsk,
3601    Asia/Krasnoyarsk, Asia/Omsk, Asia/Samarkand, Asia/Tbilisi,
3602    Asia/Vladivostok, Asia/Yakutsk, Europe/Riga, Europe/Samara.  For
3603    Asia/Yekaterinburg the correction is a few minutes.  (Thanks to
3604    Vladimir Karpinsky.)
3605
3606    The Portuguese decree of 1911-05-26 took effect on 1912-01-01.
3607    This affects 1911 timestamps in Africa/Bissau, Africa/Luanda,
3608    Atlantic/Azores, and Atlantic/Madeira.  Also, Lisbon's pre-1912
3609    GMT offset was -0:36:45 (rounded from -0:36:44.68), not -0:36:32.
3610    (Thanks to Stephen Colebourne for pointing to the decree.)
3611
3612    Asia/Dhaka ended DST on 2009-12-31 at 24:00, not 23:59.
3613
3614    A new file 'backzone' contains data which may appeal to
3615    connoisseurs of old timestamps, although it is out of scope for
3616    the tz database, is often poorly sourced, and contains some data
3617    that is known to be incorrect.  The new file is not recommended
3618    for ordinary use and its entries are not installed by default.
3619    (Thanks to Lester Caine for the high-quality Jersey, Guernsey, and
3620    Isle of Man entries.)
3621
3622    Some more zones have been turned into links, when they differed
3623    from existing zones only for older timestamps.  As usual,
3624    these changes affect UT offsets in pre-1970 timestamps only.
3625    Their old contents have been moved to the 'backzone' file.
3626    The affected zones are: Africa/Bangui, Africa/Brazzaville,
3627    Africa/Douala, Africa/Kinshasa, Africa/Libreville, Africa/Luanda,
3628    Africa/Malabo, Africa/Niamey, and Africa/Porto-Novo.
3629
3630  Changes affecting code
3631
3632    Unless NETBSD_INSPIRED is defined to 0, the tz library now
3633    supplies functions for creating and using objects that represent
3634    timezones. The new functions are tzalloc, tzfree, localtime_rz,
3635    mktime_z, and (if STD_INSPIRED is also defined) posix2time_z and
3636    time2posix_z.  They are intended for performance: for example,
3637    localtime_rz (unlike localtime_r) is trivially thread-safe without
3638    locking.  (Thanks to Christos Zoulas for proposing NetBSD-inspired
3639    functions, and to Alan Barrett and Jonathan Lennox for helping to
3640    debug the change.)
3641
3642    zdump now builds with the tz library unless USE_LTZ is defined to 0,
3643    This lets zdump use tz features even if the system library lacks them.
3644    To build zdump with the system library, use 'make CFLAGS=-DUSE_LTZ=0
3645    TZDOBJS=zdump.o CHECK_TIME_T_ALTERNATIVES='.
3646
3647    zdump now uses localtime_rz if available, as it's significantly faster,
3648    and it can help zdump better diagnose invalid timezone names.
3649    Define HAVE_LOCALTIME_RZ to 0 to suppress this.  HAVE_LOCALTIME_RZ
3650    defaults to 1 if NETBSD_INSPIRED && USE_LTZ.  When localtime_rz is
3651    not available, zdump now uses localtime_r and tzset if available,
3652    as this is a bit cleaner and faster than plain localtime.  Compile
3653    with -DHAVE_LOCALTIME_R=0 and/or -DHAVE_TZSET=0 if your system
3654    lacks these two functions.
3655
3656    If THREAD_SAFE is defined to 1, the tz library is now thread-safe.
3657    Although not needed for tz's own applications, which are single-threaded,
3658    this supports POSIX better if the tz library is used in multithreaded apps.
3659
3660    Some crashes have been fixed when zdump or the tz library is given
3661    invalid or outlandish input.
3662
3663    The tz library no longer mishandles leap seconds on platforms with
3664    unsigned time_t in timezones that lack ordinary transitions after 1970.
3665
3666    The tz code now attempts to infer TM_GMTOFF and TM_ZONE if not
3667    already defined, to make it easier to configure on common platforms.
3668    Define NO_TM_GMTOFF and NO_TM_ZONE to suppress this.
3669
3670    Unless the new macro UNINIT_TRAP is defined to 1, the tz code now
3671    assumes that reading uninitialized memory yields garbage values
3672    but does not cause other problems such as traps.
3673
3674    If TM_GMTOFF is defined and UNINIT_TRAP is 0, mktime is now
3675    more likely to guess right for ambiguous timestamps near
3676    transitions where tm_isdst does not change.
3677
3678    If HAVE_STRFTIME_L is defined to 1, the tz library now defines
3679    strftime_l for compatibility with recent versions of POSIX.
3680    Only the C locale is supported, though.  HAVE_STRFTIME_L defaults
3681    to 1 on recent POSIX versions, and to 0 otherwise.
3682
3683    tzselect -c now uses a hybrid distance measure that works better
3684    in Africa.  (Thanks to Alan Barrett for noting the problem.)
3685
3686    The C source code now ports to NetBSD when GCC_DEBUG_FLAGS is used,
3687    or when time_tz is defined.
3688
3689    When HAVE_UTMPX_H is set the 'date' command now builds on systems
3690    whose <utmpx.h> file does not define WTMPX_FILE, and when setting
3691    the date it updates the wtmpx file if _PATH_WTMPX is defined.
3692    This affects GNU/Linux and similar systems.
3693
3694    For easier maintenance later, some C code has been simplified,
3695    some lint has been removed, and the code has been tweaked so that
3696    plain 'make' is more likely to work.
3697
3698    The C type 'bool' is now used for boolean values, instead of 'int'.
3699
3700    The long-obsolete LOCALE_HOME code has been removed.
3701
3702    The long-obsolete 'gtime' function has been removed.
3703
3704  Changes affecting build procedure
3705
3706    'zdump' no longer links in ialloc.o, as it's not needed.
3707
3708    'make check_time_t_alternatives' no longer assumes GNU diff.
3709
3710  Changes affecting distribution tarballs
3711
3712    The files checktab.awk and zoneinfo2tdf.pl are now distributed in
3713    the tzdata tarball instead of the tzcode tarball, since they help
3714    maintain the data.  The NEWS and Theory files are now also
3715    distributed in the tzdata tarball, as they're relevant for data.
3716    (Thanks to Alan Barrett for pointing this out.)  Also, the
3717    leapseconds.awk file is no longer distributed in the tzcode
3718    tarball, since it belongs in the tzdata tarball (where 2014f
3719    inadvertently also distributed it).
3720
3721  Changes affecting documentation and commentary
3722
3723    A new file CONTRIBUTING is distributed.  (Thanks to Tim Parenti for
3724    suggesting a CONTRIBUTING file, and to Tony Finch and Walter Harms
3725    for debugging it.)
3726
3727    The man pages have been updated to use function prototypes,
3728    to document thread-safe variants like localtime_r, and to document
3729    the NetBSD-inspired functions tzalloc, tzfree, localtime_rz, and
3730    mktime_z.
3731
3732    The fields in Link lines have been renamed to be more descriptive
3733    and more like the parameters of 'ln'.  LINK-FROM has become TARGET,
3734    and LINK-TO has become LINK-NAME.
3735
3736    tz-link.htm mentions the IETF's tzdist working group; Windows
3737    Runtime etc. (thanks to Matt Johnson); and HP-UX's tztab.
3738
3739    Some broken URLs have been fixed in the commentary.  (Thanks to
3740    Lester Caine.)
3741
3742    Commentary about Philippines DST has been updated, and commentary
3743    on pre-1970 time in India has been added.
3744
3745
3746Release 2014f - 2014-08-05 17:42:36 -0700
3747
3748  Changes affecting future timestamps
3749
3750    Russia will subtract an hour from most of its time zones on 2014-10-26
3751    at 02:00 local time.  (Thanks to Alexander Krivenyshev.)
3752    There are a few exceptions: Magadan Oblast (Asia/Magadan) and Zabaykalsky
3753    Krai are subtracting two hours; conversely, Chukotka Autonomous Okrug
3754    (Asia/Anadyr), Kamchatka Krai (Asia/Kamchatka), Kemerovo Oblast
3755    (Asia/Novokuznetsk), and the Samara Oblast and the Udmurt Republic
3756    (Europe/Samara) are not changing their clocks.  The changed zones are
3757    Europe/Kaliningrad, Europe/Moscow, Europe/Simferopol, Europe/Volgograd,
3758    Asia/Yekaterinburg, Asia/Omsk, Asia/Novosibirsk, Asia/Krasnoyarsk,
3759    Asia/Irkutsk, Asia/Yakutsk, Asia/Vladivostok, Asia/Khandyga,
3760    Asia/Sakhalin, and Asia/Ust-Nera; Asia/Magadan will have two hours
3761    subtracted; and Asia/Novokuznetsk's time zone abbreviation is affected,
3762    but not its UTC offset.  Two zones are added: Asia/Chita (split
3763    from Asia/Yakutsk, and also with two hours subtracted) and
3764    Asia/Srednekolymsk (split from Asia/Magadan, but with only one hour
3765    subtracted).  (Thanks to Tim Parenti for much of the above.)
3766
3767  Changes affecting time zone abbreviations
3768
3769    Australian eastern time zone abbreviations are now AEST/AEDT not EST,
3770    and similarly for the other Australian zones.  That is, for eastern
3771    standard and daylight saving time the abbreviations are AEST and AEDT
3772    instead of the former EST for both; similarly, ACST/ACDT, ACWST/ACWDT,
3773    and AWST/AWDT are now used instead of the former CST, CWST, and WST.
3774    This change does not affect UT offsets, only time zone abbreviations.
3775    (Thanks to Rich Tibbett and many others.)
3776
3777    Asia/Novokuznetsk shifts from NOVT to KRAT (remaining on UT +07)
3778    effective 2014-10-26 at 02:00 local time.
3779
3780    The time zone abbreviation for Xinjiang Time (observed in Ürümqi)
3781    has been changed from URUT to XJT.  (Thanks to Luther Ma.)
3782
3783    Prefer MSK/MSD for Moscow time in Russia, even in other cities.
3784    Similarly, prefer EET/EEST for eastern European time in Russia.
3785
3786    Change time zone abbreviations in (western) Samoa to use "ST" and
3787    "DT" suffixes, as this is more likely to match common practice.
3788    Prefix "W" to (western) Samoa time when its standard-time offset
3789    disagrees with that of American Samoa.
3790
3791    America/Metlakatla now uses PST, not MeST, to abbreviate its time zone.
3792
3793    Time zone abbreviations have been updated for Japan's two time
3794    zones used 1896-1937.  JWST now stands for Western Standard
3795    Time, and JCST for Central Standard Time (formerly this was CJT).
3796    These abbreviations are now used for time in Korea, Taiwan,
3797    and Sakhalin while controlled by Japan.
3798
3799  Changes affecting past timestamps
3800
3801    China's five zones have been simplified to two, since the post-1970
3802    differences in the other three seem to have been imaginary.  The
3803    zones Asia/Harbin, Asia/Chongqing, and Asia/Kashgar have been
3804    removed; backwards-compatibility links still work, albeit with
3805    different behaviors for timestamps before May 1980.  Asia/Urumqi's
3806    1980 transition to UT +08 has been removed, so that it is now at
3807    +06 and not +08.  (Thanks to Luther Ma and to Alois Treindl;
3808    Treindl sent helpful translations of two papers by Guo Qingsheng.)
3809
3810    Some zones have been turned into links, when they differed from existing
3811    zones only for older UT offsets where data entries were likely invented.
3812    These changes affect UT offsets in pre-1970 timestamps only.  This is
3813    similar to the change in release 2013e, except this time for western
3814    Africa.  The affected zones are: Africa/Bamako, Africa/Banjul,
3815    Africa/Conakry, Africa/Dakar, Africa/Freetown, Africa/Lome,
3816    Africa/Nouakchott, Africa/Ouagadougou, Africa/Sao_Tome, and
3817    Atlantic/St_Helena.  This also affects the backwards-compatibility
3818    link Africa/Timbuktu.  (Thanks to Alan Barrett, Stephen Colebourne,
3819    Tim Parenti, and David Patte for reporting problems in earlier
3820    versions of this change.)
3821
3822    Asia/Shanghai's pre-standard-time UT offset has been changed from
3823    8:05:57 to 8:05:43, the location of Xujiahui Observatory.  Its
3824    transition to standard time has been changed from 1928 to 1901.
3825
3826    Asia/Taipei switched to JWST on 1896-01-01, then to JST on 1937-10-01,
3827    then to CST on 1945-09-21 at 01:00, and did not observe DST in 1945.
3828    In 1946 it observed DST from 05-15 through 09-30; in 1947
3829    from 04-15 through 10-31; and in 1979 from 07-01 through 09-30.
3830    (Thanks to Yu-Cheng Chuang.)
3831
3832    Asia/Riyadh's transition to standard time is now 1947-03-14, not 1950.
3833
3834    Europe/Helsinki's 1942 fall-back transition was 10-04 at 01:00, not
3835    10-03 at 00:00.  (Thanks to Konstantin Hyppönen.)
3836
3837    Pacific/Pago_Pago has been changed from UT -11:30 to -11 for the
3838    period from 1911 to 1950.
3839
3840    Pacific/Chatham has been changed to New Zealand standard time plus
3841    45 minutes for the period before 1957, reflecting a 1956 remark in
3842    the New Zealand parliament.
3843
3844    Europe/Budapest has several pre-1946 corrections: in 1918 the transition
3845    out of DST was on 09-16, not 09-29; in 1919 it was on 11-24, not 09-15; in
3846    1945 it was on 11-01, not 11-03; in 1941 the transition to DST was 04-08
3847    not 04-06 at 02:00; and there was no DST in 1920.
3848
3849    Africa/Accra is now assumed to have observed DST from 1920 through 1935.
3850
3851    Time in Russia before 1927 or so has been corrected by a few seconds in
3852    the following zones: Europe/Moscow, Asia/Irkutsk, Asia/Tbilisi,
3853    Asia/Tashkent, Asia/Vladivostok, Asia/Yekaterinburg, Europe/Helsinki, and
3854    Europe/Riga.  Also, Moscow's location has been changed to its Kilometer 0
3855    point.  (Thanks to Vladimir Karpinsky for the Moscow changes.)
3856
3857  Changes affecting data format
3858
3859    A new file 'zone1970.tab' supersedes 'zone.tab' in the installed data.
3860    The new file's extended format allows multiple country codes per zone.
3861    The older file is still installed but is deprecated; its format is
3862    not changing and it will still be distributed for a while, but new
3863    applications should use the new file.
3864
3865    The new file format simplifies maintenance of obscure locations.
3866    To test this, it adds coverage for the Crozet Islands and the
3867    Scattered Islands.  (Thanks to Tobias Conradi and Antoine Leca.)
3868
3869    The file 'iso3166.tab' is planned to switch from ASCII to UTF-8.
3870    It is still ASCII now, but commentary about the switch has been added.
3871    The new file 'zone1970.tab' already uses UTF-8.
3872
3873  Changes affecting code
3874
3875    'localtime', 'mktime', etc. now use much less stack space if ALL_STATE
3876    is defined.  (Thanks to Elliott Hughes for reporting the problem.)
3877
3878    'zic' no longer mishandles input when ignoring case in locales that
3879    are not compatible with English, e.g., unibyte Turkish locales when
3880    compiled with HAVE_GETTEXT.
3881
3882    Error diagnostics of 'zic' and 'yearistype' have been reworded so that
3883    they no longer use ASCII '-' as if it were a dash.
3884
3885    'zic' now rejects output file names that contain '.' or '..' components.
3886    (Thanks to Tim Parenti for reporting the problem.)
3887
3888    'zic -v' now warns about output file names that do not follow
3889    POSIX rules, or that contain a digit or '.'.  (Thanks to Arthur
3890    David Olson for starting the ball rolling on this.)
3891
3892    Some lint has been removed when using GCC_DEBUG_FLAGS with GCC 4.9.0.
3893
3894  Changes affecting build procedure
3895
3896    'zic' no longer links in localtime.o and asctime.o, as they're not needed.
3897    (Thanks to John Cochran.)
3898
3899  Changes affecting documentation and commentary
3900
3901    The 'Theory' file documents legacy names, the longstanding
3902    exceptions to the POSIX-inspired file name rules.
3903
3904    The 'zic' documentation clarifies the role of time types when
3905    interpreting dates.  (Thanks to Arthur David Olson.)
3906
3907    Documentation and commentary now prefer UTF-8 to US-ASCII,
3908    allowing the use of proper accents in foreign words and names.
3909    Code and data have not changed because of this.  (Thanks to
3910    Garrett Wollman, Ian Abbott, and Guy Harris for helping to debug
3911    this.)
3912
3913    Non-HTML documentation and commentary now use plain-text URLs instead of
3914    HTML insertions, and are more consistent about bracketing URLs when they
3915    are not already surrounded by white space.  (Thanks to suggestions by
3916    Steffen Nurpmeso.)
3917
3918    There is new commentary about Xujiahui Observatory, the five time-zone
3919    project in China from 1918 to 1949, timekeeping in Japanese-occupied
3920    Shanghai, and Tibet Time in the 1950s.  The sharp-eyed can spot the
3921    warlord Jin Shuren in the data.
3922
3923    Commentary about the coverage of each Russian zone has been standardized.
3924    (Thanks to Tim Parenti.)
3925
3926    There is new commentary about contemporary timekeeping in Ethiopia.
3927
3928    Obsolete comments about a 2007 proposal for DST in Kuwait has been removed.
3929
3930    There is new commentary about time in Poland in 1919.
3931
3932    Proper credit has been given to DST inventor George Vernon Hudson.
3933
3934    Commentary about time in Metlakatla, AK and Resolute, NU has been
3935    improved, with a new source for the former.
3936
3937    In zone.tab, Pacific/Easter no longer mentions Salas y Gómez, as it
3938    is uninhabited.
3939
3940    Commentary about permanent Antarctic bases has been updated.
3941
3942    Several typos have been corrected.  (Thanks to Tim Parenti for
3943    contributing some of these fixes.)
3944
3945    tz-link.htm now mentions the JavaScript libraries Moment Timezone,
3946    TimezoneJS.Date, Walltime-js, and Timezone.  (Thanks to a heads-up
3947    from Matt Johnson.)  Also, it mentions the Go 'latlong' package.
3948    (Thanks to a heads-up from Dirkjan Ochtman.)
3949
3950    The files usno1988, usno1989, usno1989a, usno1995, usno1997, and usno1998
3951    have been removed.  These obsolescent US Naval Observatory entries were no
3952    longer helpful for maintenance.  (Thanks to Tim Parenti for the suggestion.)
3953
3954
3955Release 2014e - 2014-06-12 21:53:52 -0700
3956
3957  Changes affecting near-future timestamps
3958
3959    Egypt's 2014 Ramadan-based transitions are June 26 and July 31 at 24:00.
3960    (Thanks to Imed Chihi.)  Guess that from 2015 on Egypt will temporarily
3961    switch to standard time at 24:00 the last Thursday before Ramadan, and
3962    back to DST at 00:00 the first Friday after Ramadan.
3963
3964    Similarly, Morocco's are June 28 at 03:00 and August 2 at 02:00.  (Thanks
3965    to Milamber Space Network.)  Guess that from 2015 on Morocco will
3966    temporarily switch to standard time at 03:00 the last Saturday before
3967    Ramadan, and back to DST at 02:00 the first Saturday after Ramadan.
3968
3969  Changes affecting past timestamps
3970
3971    The abbreviation "MSM" (Moscow Midsummer Time) is now used instead of
3972    "MSD" for Moscow's double daylight time in summer 1921.  Also, a typo
3973    "VLASST" has been repaired to be "VLAST" for Vladivostok summer time
3974    in 1991.  (Thanks to Hank W. for reporting the problems.)
3975
3976  Changes affecting commentary
3977
3978    tz-link.htm now cites RFC 7265 for jCal, mentions PTP and the
3979    draft CalDAV extension, updates URLs for TSP, TZInfo, IATA, and
3980    removes stale pointers to World Time Explorer and WORLDTIME.
3981
3982
3983Release 2014d - 2014-05-27 21:34:40 -0700
3984
3985  Changes affecting code
3986
3987    zic no longer generates files containing timestamps before the Big Bang.
3988    This works around GNOME glib bug 878
3989    <https://gitlab.gnome.org/GNOME/glib/issues/878>
3990    (Thanks to Leonardo Chiquitto for reporting the bug, and to
3991    Arthur David Olson and James Cloos for suggesting improvements to the fix.)
3992
3993  Changes affecting documentation
3994
3995    tz-link.htm now mentions GNOME.
3996
3997
3998Release 2014c - 2014-05-13 07:44:13 -0700
3999
4000  Changes affecting near-future timestamps
4001
4002    Egypt observes DST starting 2014-05-15 at 24:00.
4003    (Thanks to Ahmad El-Dardiry and Gunther Vermier.)
4004    Details have not been announced, except that DST will not be observed
4005    during Ramadan.  Guess that DST will stop during the same Ramadan dates as
4006    Morocco, and that Egypt's future spring and fall transitions will be the
4007    same as 2010 when it last observed DST, namely April's last Friday at
4008    00:00 to September's last Thursday at 23:00 standard time.  Also, guess
4009    that Ramadan transitions will be at 00:00 standard time.
4010
4011  Changes affecting code
4012
4013    zic now generates transitions for minimum time values, eliminating guesswork
4014    when handling low-valued timestamps.  (Thanks to Arthur David Olson.)
4015
4016    Port to Cygwin sans glibc.  (Thanks to Arthur David Olson.)
4017
4018  Changes affecting commentary and documentation
4019
4020    Remove now-confusing comment about Jordan.  (Thanks to Oleksii Nochovnyi.)
4021
4022
4023Release 2014b - 2014-03-24 21:28:50 -0700
4024
4025  Changes affecting near-future timestamps
4026
4027    Crimea switches to Moscow time on 2014-03-30 at 02:00 local time.
4028    (Thanks to Alexander Krivenyshev.)  Move its zone.tab entry from UA to RU.
4029
4030    New entry for Troll station, Antarctica.  (Thanks to Paul-Inge Flakstad and
4031    Bengt-Inge Larsson.)  This is currently an approximation; a better version
4032    will require the zic and localtime fixes mentioned below, and the plan is
4033    to wait for a while until at least the zic fixes propagate.
4034
4035  Changes affecting code
4036
4037    'zic' and 'localtime' no longer reject locations needing four transitions
4038    per year for the foreseeable future.  (Thanks to Andrew Main (Zefram).)
4039    Also, 'zic' avoids some unlikely failures due to integer overflow.
4040
4041  Changes affecting build procedure
4042
4043    'make check' now detects Rule lines defined but never used.
4044    The NZAQ rules, an instance of this problem, have been removed.
4045
4046  Changes affecting commentary and documentation
4047
4048    Fix Tuesday/Thursday typo in description of time in Israel.
4049    (Thanks to Bert Katz via Pavel Kharitonov and Mike Frysinger.)
4050
4051    Microsoft Windows 8.1 doesn't support tz database names.  (Thanks
4052    to Donald MacQueen.)  Instead, the Microsoft Windows Store app
4053    library supports them.
4054
4055    Add comments about Johnston Island time in the 1960s.
4056    (Thanks to Lyle McElhaney.)
4057
4058    Morocco's 2014 DST start will be as predicted.
4059    (Thanks to Sebastien Willemijns.)
4060
4061
4062Release 2014a - 2014-03-07 23:30:29 -0800
4063
4064  Changes affecting near-future timestamps
4065
4066    Turkey begins DST on 2014-03-31, not 03-30.  (Thanks to Faruk Pasin for
4067    the heads-up, and to Tim Parenti for simplifying the update.)
4068
4069  Changes affecting past timestamps
4070
4071    Fiji ended DST on 2014-01-19 at 02:00, not the previously scheduled 03:00.
4072    (Thanks to Steffen Thorsen.)
4073
4074    Ukraine switched from Moscow to Eastern European time on 1990-07-01
4075    (not 1992-01-01), and observed DST during the entire next winter.
4076    (Thanks to Vladimir in Moscow via Alois Treindl.)
4077
4078    In 1988 Israel observed DST from 04-10 to 09-04, not 04-09 to 09-03.
4079    (Thanks to Avigdor Finkelstein.)
4080
4081  Changes affecting code
4082
4083    A uninitialized-storage bug in 'localtime' has been fixed.
4084    (Thanks to Logan Chien.)
4085
4086  Changes affecting the build procedure
4087
4088    The settings for 'make check_web' now default to Ubuntu 13.10.
4089
4090  Changes affecting commentary and documentation
4091
4092    The boundary of the US Pacific time zone is given more accurately.
4093    (Thanks to Alan Mintz.)
4094
4095    Chile's 2014 DST will be as predicted.  (Thanks to José Miguel Garrido.)
4096
4097    Paraguay's 2014 DST will be as predicted.  (Thanks to Carlos Raúl Perasso.)
4098
4099    Better descriptions of countries with same time zone history as
4100    Trinidad and Tobago since 1970.  (Thanks to Alan Barrett for suggestion.)
4101
4102    Several changes affect tz-link.htm, the main web page.
4103
4104      Mention Time.is (thanks to Even Scharning) and WX-now (thanks to
4105      David Braverman).
4106
4107      Mention xCal (Internet RFC 6321) and jCal.
4108
4109      Microsoft has some support for tz database names.
4110
4111      CLDR data formats include both XML and JSON.
4112
4113      Mention Maggiolo's map of solar vs standard time.
4114      (Thanks to Arthur David Olson.)
4115
4116      Mention TZ4Net.  (Thanks to Matt Johnson.)
4117
4118      Mention the timezone-olson Haskell package.
4119
4120      Mention zeitverschiebung.net.  (Thanks to Martin Jäger.)
4121
4122      Remove moribund links to daylight-savings-time.info and to
4123      Simple Timer + Clocks.
4124
4125      Update two links.  (Thanks to Oscar van Vlijmen.)
4126
4127      Fix some formatting glitches, e.g., remove random newlines from
4128      abbr elements' title attributes.
4129
4130
4131Release 2013i - 2013-12-17 07:25:23 -0800
4132
4133  Changes affecting near-future timestamps:
4134
4135    Jordan switches back to standard time at 00:00 on December 20, 2013.
4136    The 2006-2011 transition schedule is planned to resume in 2014.
4137    (Thanks to Steffen Thorsen.)
4138
4139  Changes affecting past timestamps:
4140
4141    In 2004, Cuba began DST on March 28, not April 4.
4142    (Thanks to Steffen Thorsen.)
4143
4144  Changes affecting code
4145
4146    The compile-time flag NOSOLAR has been removed, as nowadays the
4147    benefit of slightly shrinking runtime table size is outweighed by the
4148    cost of disallowing potential future updates that exceed old limits.
4149
4150  Changes affecting documentation and commentary
4151
4152    The files solar87, solar88, and solar89 are no longer distributed.
4153    They were a negative experiment - that is, a demonstration that
4154    tz data can represent solar time only with some difficulty and error.
4155    Their presence in the distribution caused confusion, as Riyadh
4156    civil time was generally not solar time in those years.
4157
4158    tz-link.htm now mentions Noda Time.  (Thanks to Matt Johnson.)
4159
4160
4161Release 2013h - 2013-10-25 15:32:32 -0700
4162
4163  Changes affecting current and future timestamps:
4164
4165    Libya has switched its UT offset back to +02 without DST, instead
4166    of +01 with DST.  (Thanks to Even Scharning.)
4167
4168    Western Sahara (Africa/El_Aaiun) uses Morocco's DST rules.
4169    (Thanks to Gwillim Law.)
4170
4171  Changes affecting future timestamps:
4172
4173    Acre and (we guess) western Amazonas will switch from UT -04 to -05
4174    on 2013-11-10.  This affects America/Rio_Branco and America/Eirunepe.
4175    (Thanks to Steffen Thorsen.)
4176
4177    Add entries for DST transitions in Morocco in the year 2038.
4178    This avoids some year-2038 glitches introduced in 2013g.
4179    (Thanks to Yoshito Umaoka for reporting the problem.)
4180
4181  Changes affecting API
4182
4183    The 'tzselect' command no longer requires the 'select' command,
4184    and should now work with /bin/sh on more platforms.  It also works
4185    around a bug in BusyBox awk before version 1.21.0.  (Thanks to
4186    Patrick 'P. J.' McDermott and Alan Barrett.)
4187
4188  Changes affecting code
4189
4190    Fix localtime overflow bugs with 32-bit unsigned time_t.
4191
4192    zdump no longer assumes sscanf returns maximal values on overflow.
4193
4194  Changes affecting the build procedure
4195
4196    The builder can specify which programs to use, if any, instead of
4197    'ar' and 'ranlib', and libtz.a is now built locally before being
4198    installed.  (Thanks to Michael Forney.)
4199
4200    A dependency typo in the 'zdump' rule has been fixed.
4201    (Thanks to Andrew Paprocki.)
4202
4203    The Makefile has been simplified by assuming that 'mkdir -p' and 'cp -f'
4204    work as specified by POSIX.2-1992 or later; this is portable nowadays.
4205
4206    'make clean' no longer removes 'leapseconds', since it's
4207    host-independent and is part of the distribution.
4208
4209    The unused makefile macros TZCSRCS, TZDSRCS, DATESRCS have been removed.
4210
4211  Changes affecting documentation and commentary
4212
4213    tz-link.htm now mentions TC TIMEZONE's draft time zone service protocol
4214    (thanks to Mike Douglass) and TimezoneJS.Date (thanks to Jim Fehrle).
4215
4216    Update URLs in tz-link page.  Add URLs for Microsoft Windows, since
4217    8.1 introduces tz support.  Remove URLs for Tru64 and UnixWare (no
4218    longer maintained) and for old advisories.  SOFA now does C.
4219
4220Release 2013g - 2013-09-30 21:08:26 -0700
4221
4222  Changes affecting current and near-future timestamps
4223
4224    Morocco now observes DST from the last Sunday in March to the last
4225    Sunday in October, not April to September respectively.  (Thanks
4226    to Steffen Thorsen.)
4227
4228  Changes affecting 'zic'
4229
4230    'zic' now runs on platforms that lack both hard links and symlinks.
4231    (Thanks to Theo Veenker for reporting the problem, for MinGW.)
4232    Also, fix some bugs on platforms that lack hard links but have symlinks.
4233
4234    'zic -v' again warns that Asia/Tehran has no POSIX environment variable
4235    to predict the far future, fixing a bug introduced in 2013e.
4236
4237  Changes affecting the build procedure
4238
4239    The 'leapseconds' file is again put into the tzdata tarball.
4240    Also, 'leapseconds.awk', so tzdata is self-contained.  (Thanks to
4241    Matt Burgess and Ian Abbott.)  The timestamps of these and other
4242    dependent files in tarballs are adjusted more consistently.
4243
4244  Changes affecting documentation and commentary
4245
4246    The README file is now part of the data tarball as well as the code.
4247    It now states that files are public domain unless otherwise specified.
4248    (Thanks to Andrew Main (Zefram) for asking for clarifications.)
4249    Its details about the 1989 release moved to a place of honor near
4250    the end of NEWS.
4251
4252
4253Release 2013f - 2013-09-24 23:37:36 -0700
4254
4255  Changes affecting near-future timestamps
4256
4257    Tocantins will very likely not observe DST starting this spring.
4258    (Thanks to Steffen Thorsen.)
4259
4260    Jordan will likely stay at UT +03 indefinitely, and will not fall
4261    back this fall.
4262
4263    Palestine will fall back at 00:00, not 01:00.  (Thanks to Steffen Thorsen.)
4264
4265  Changes affecting API
4266
4267    The types of the global variables 'timezone' and 'altzone' (if present)
4268    have been changed back to 'long'.  This is required for 'timezone'
4269    by POSIX, and for 'altzone' by common practice, e.g., Solaris 11.
4270    These variables were originally 'long' in the tz code, but were
4271    mistakenly changed to 'time_t' in 1987; nobody reported the
4272    incompatibility until now.  The difference matters on x32, where
4273    'long' is 32 bits and 'time_t' is 64.  (Thanks to Elliott Hughes.)
4274
4275  Changes affecting the build procedure
4276
4277    Avoid long strings in leapseconds.awk to work around a mawk bug.
4278    (Thanks to Cyril Baurand.)
4279
4280  Changes affecting documentation and commentary
4281
4282    New file 'NEWS' that contains release notes like this one.
4283
4284    Paraguay's law does not specify DST transition time; 00:00 is customary.
4285    (Thanks to Waldemar Villamayor-Venialbo.)
4286
4287    Minor capitalization fixes.
4288
4289  Changes affecting version-control only
4290
4291    The experimental GitHub repository now contains annotated and
4292    signed tags for recent releases, e.g., '2013e' for Release 2013e.
4293    Releases are tagged starting with 2012e; earlier releases were
4294    done differently, and tags would either not have a simple name or
4295    not exactly match what was released.
4296
4297    'make set-timestamps' is now simpler and a bit more portable.
4298
4299
4300Release 2013e - 2013-09-19 23:50:04 -0700
4301
4302  Changes affecting near-future timestamps
4303
4304    This year Fiji will start DST on October 27, not October 20.
4305    (Thanks to David Wheeler for the heads-up.)  For now, guess that
4306    Fiji will continue to spring forward the Sunday before the fourth
4307    Monday in October.
4308
4309  Changes affecting current and future time zone abbreviations
4310
4311    Use WIB/WITA/WIT rather than WIT/CIT/EIT for alphabetic Indonesian
4312    time zone abbreviations since 1932.  (Thanks to George Ziegler,
4313    Priyadi Iman Nurcahyo, Zakaria, Jason Grimes, Martin Pitt, and
4314    Benny Lin.)  This affects Asia/Dili, Asia/Jakarta, Asia/Jayapura,
4315    Asia/Makassar, and Asia/Pontianak.
4316
4317    Use ART (UT -03, standard time), rather than WARST (also -03, but
4318    daylight saving time) for San Luis, Argentina since 2009.
4319
4320  Changes affecting Godthåb timestamps after 2037 if version mismatch
4321
4322    Allow POSIX-like TZ strings where the transition time's hour can
4323    range from -167 through 167, instead of the POSIX-required 0
4324    through 24.  E.g., TZ='FJT-12FJST,M10.3.1/146,M1.3.4/75' for the
4325    new Fiji rules.  This is a more compact way to represent
4326    far-future timestamps for America/Godthab, America/Santiago,
4327    Antarctica/Palmer, Asia/Gaza, Asia/Hebron, Asia/Jerusalem,
4328    Pacific/Easter, and Pacific/Fiji.  Other zones are unaffected by
4329    this change.  (Derived from a suggestion by Arthur David Olson.)
4330
4331    Allow POSIX-like TZ strings where daylight saving time is in
4332    effect all year.  E.g., TZ='WART4WARST,J1/0,J365/25' for Western
4333    Argentina Summer Time all year.  This supports a more compact way
4334    to represent the 2013d data for America/Argentina/San_Luis.
4335    Because of the change for San Luis noted above this change does not
4336    affect the current data.  (Thanks to Andrew Main (Zefram) for
4337    suggestions that improved this change.)
4338
4339    Where these two TZ changes take effect, there is a minor extension
4340    to the tz file format in that it allows new values for the
4341    embedded TZ-format string, and the tz file format version number
4342    has therefore been increased from 2 to 3 as a precaution.
4343    Version-2-based client code should continue to work as before for
4344    all timestamps before 2038.  Existing version-2-based client code
4345    (tzcode, GNU/Linux, Solaris) has been tested on version-3-format
4346    files, and typically works in practice even for timestamps after
4347    2037; the only known exception is America/Godthab.
4348
4349  Changes affecting timestamps before 1970
4350
4351    Pacific/Johnston is now a link to Pacific/Honolulu.  This corrects
4352    some errors before 1947.
4353
4354    Some zones have been turned into links, when they differ from existing
4355    zones only in older data entries that were likely invented or that
4356    differ only in LMT or transitions from LMT.  These changes affect
4357    only timestamps before 1943.  The affected zones are:
4358    Africa/Juba, America/Anguilla, America/Aruba, America/Dominica,
4359    America/Grenada, America/Guadeloupe, America/Marigot,
4360    America/Montserrat, America/St_Barthelemy, America/St_Kitts,
4361    America/St_Lucia, America/St_Thomas, America/St_Vincent,
4362    America/Tortola, and Europe/Vaduz.  (Thanks to Alois Treindl for
4363    confirming that the old Europe/Vaduz zone was wrong and the new
4364    link is better for WWII-era times.)
4365
4366    Change Kingston Mean Time from -5:07:12 to -5:07:11.  This affects
4367    America/Cayman, America/Jamaica and America/Grand_Turk timestamps
4368    from 1890 to 1912.
4369
4370    Change the UT offset of Bern Mean Time from 0:29:44 to 0:29:46.
4371    This affects Europe/Zurich timestamps from 1853 to 1894.  (Thanks
4372    to Alois Treindl.)
4373
4374    Change the date of the circa-1850 Zurich transition from 1849-09-12
4375    to 1853-07-16, overriding Shanks with data from Messerli about
4376    postal and telegraph time in Switzerland.
4377
4378  Changes affecting time zone abbreviations before 1970
4379
4380    For Asia/Jakarta, use BMT (not JMT) for mean time from 1923 to 1932,
4381    as Jakarta was called Batavia back then.
4382
4383  Changes affecting API
4384
4385    The 'zic' command now outputs a dummy transition when far-future
4386    data can't be summarized using a TZ string, and uses a 402-year
4387    window rather than a 400-year window.  For the current data, this
4388    affects only the Asia/Tehran file.  It does not affect any of the
4389    timestamps that this file represents, so zdump outputs the same
4390    information as before.  (Thanks to Andrew Main (Zefram).)
4391
4392    The 'date' command has a new '-r' option, which lets you specify
4393    the integer time to display, a la FreeBSD.
4394
4395    The 'tzselect' command has two new options '-c' and '-n', which lets you
4396    select a zone based on latitude and longitude.
4397
4398    The 'zic' command's '-v' option now warns about constructs that
4399    require the new version-3 binary file format.  (Thanks to Arthur
4400    David Olson for the suggestion.)
4401
4402    Support for floating-point time_t has been removed.
4403    It was always dicey, and POSIX no longer requires it.
4404    (Thanks to Eric Blake for suggesting to the POSIX committee to
4405    remove it, and thanks to Alan Barrett, Clive D.W. Feather, Andy
4406    Heninger, Arthur David Olson, and Alois Treindl, for reporting
4407    bugs and elucidating some of the corners of the old floating-point
4408    implementation.)
4409
4410    The signatures of 'offtime', 'timeoff', and 'gtime' have been
4411    changed back to the old practice of using 'long' to represent UT
4412    offsets.  This had been inadvertently and mistakenly changed to
4413    'int_fast32_t'.  (Thanks to Christos Zoulas.)
4414
4415    The code avoids undefined behavior on integer overflow in some
4416    more places, including gmtime, localtime, mktime and zdump.
4417
4418  Changes affecting the zdump utility
4419
4420    zdump now outputs "UT" when referring to Universal Time, not "UTC".
4421    "UTC" does not make sense for timestamps that predate the introduction
4422    of UTC, whereas "UT", a more generic term, does.  (Thanks to Steve Allen
4423    for clarifying UT vs UTC.)
4424
4425  Data changes affecting behavior of tzselect and similar programs
4426
4427    Country code BQ is now called the more common name "Caribbean Netherlands"
4428    rather than the more official "Bonaire, St Eustatius & Saba".
4429
4430    Remove from zone.tab the names America/Montreal, America/Shiprock,
4431    and Antarctica/South_Pole, as they are equivalent to existing
4432    same-country-code zones for post-1970 timestamps.  The data entries for
4433    these names are unchanged, so the names continue to work as before.
4434
4435  Changes affecting code internals
4436
4437    zic -c now runs way faster on 64-bit hosts when given large numbers.
4438
4439    zic now uses vfprintf to avoid allocating and freeing some memory.
4440
4441    tzselect now computes the list of continents from the data,
4442    rather than have it hard-coded.
4443
4444    Minor changes pacify GCC 4.7.3 and GCC 4.8.1.
4445
4446  Changes affecting the build procedure
4447
4448    The 'leapseconds' file is now generated automatically from a
4449    new file 'leap-seconds.list', which is a copy of
4450    <ftp://ftp.nist.gov/pub/time/leap-seconds.list>
4451    A new source file 'leapseconds.awk' implements this.
4452    The goal is simplification of the future maintenance of 'leapseconds'.
4453
4454    When building the 'posix' or 'right' subdirectories, if the
4455    subdirectory would be a copy of the default subdirectory, it is
4456    now made a symbolic link if that is supported.  This saves about
4457    2 MB of file system space.
4458
4459    The links America/Shiprock and Antarctica/South_Pole have been
4460    moved to the 'backward' file.  This affects only nondefault builds
4461    that omit 'backward'.
4462
4463  Changes affecting version-control only
4464
4465    .gitignore now ignores 'date'.
4466
4467  Changes affecting documentation and commentary
4468
4469    Changes to the 'tzfile' man page
4470
4471      It now mentions that the binary file format may be extended in
4472      future versions by appending data.
4473
4474      It now refers to the 'zdump' and 'zic' man pages.
4475
4476    Changes to the 'zic' man page
4477
4478      It lists conditions that elicit a warning with '-v'.
4479
4480      It says that the behavior is unspecified when duplicate names
4481      are given, or if the source of one link is the target of another.
4482
4483      Its examples are updated to match the latest data.
4484
4485      The definition of white space has been clarified slightly.
4486      (Thanks to Michael Deckers.)
4487
4488    Changes to the 'Theory' file
4489
4490      There is a new section about the accuracy of the tz database,
4491      describing the many ways that errors can creep in, and
4492      explaining why so many of the pre-1970 timestamps are wrong or
4493      misleading (thanks to Steve Allen, Lester Caine, and Garrett
4494      Wollman for discussions that contributed to this).
4495
4496      The 'Theory' file describes LMT better (this follows a
4497      suggestion by Guy Harris).
4498
4499      It refers to the 2013 edition of POSIX rather than the 2004 edition.
4500
4501      It's mentioned that excluding 'backward' should not affect the
4502      other data, and it suggests at least one zone.tab name per
4503      inhabited country (thanks to Stephen Colebourne).
4504
4505      Some longstanding restrictions on names are documented, e.g.,
4506      'America/New_York' precludes 'America/New_York/Bronx'.
4507
4508      It gives more reasons for the 1970 cutoff.
4509
4510      It now mentions which time_t variants are supported, such as
4511      signed integer time_t.  (Thanks to Paul Goyette for reporting
4512      typos in an experimental version of this change.)
4513
4514      (Thanks to Philip Newton for correcting typos in these changes.)
4515
4516    Documentation and commentary is more careful to distinguish UT in
4517    general from UTC in particular.  (Thanks to Steve Allen.)
4518
4519    Add a better source for the Zurich 1894 transition.
4520    (Thanks to Pierre-Yves Berger.)
4521
4522    Update shapefile citations in tz-link.htm.  (Thanks to Guy Harris.)
4523
4524
4525Release 2013d - 2013-07-05 07:38:01 -0700
4526
4527  Changes affecting future timestamps:
4528
4529    Morocco's midsummer transitions this year are July 7 and August 10,
4530    not July 9 and August 8.  (Thanks to Andrew Paprocki.)
4531
4532    Israel now falls back on the last Sunday of October.
4533    (Thanks to Ephraim Silverberg.)
4534
4535  Changes affecting past timestamps:
4536
4537    Specify Jerusalem's location more precisely; this changes the pre-1880
4538    times by 2 s.
4539
4540  Changing affecting metadata only:
4541
4542    Fix typos in the entries for country codes BQ and SX.
4543
4544  Changes affecting code:
4545
4546    Rework the code to fix a bug with handling Australia/Macquarie on
4547    32-bit hosts (thanks to Arthur David Olson).
4548
4549    Port to platforms like NetBSD, where time_t can be wider than long.
4550
4551    Add support for testing time_t types other than the system's.
4552    Run 'make check_time_t_alternatives' to try this out.
4553    Currently, the tests fail for unsigned time_t;
4554    this should get fixed at some point.
4555
4556  Changes affecting documentation and commentary:
4557
4558    Deemphasize the significance of national borders.
4559
4560    Update the zdump man page.
4561
4562    Remove obsolete NOID comment (thanks to Denis Excoffier).
4563
4564    Update several URLs and comments in the web pages.
4565
4566    Spelling fixes (thanks to Kevin Lyda and Jonathan Leffler).
4567
4568    Update URL for CLDR Zone->Tzid table (thanks to Yoshito Umaoka).
4569
4570
4571Release 2013c - 2013-04-19 16:17:40 -0700
4572
4573  Changes affecting current and future timestamps:
4574
4575    Palestine observed DST starting March 29, 2013.  (Thanks to
4576    Steffen Thorsen.)  From 2013 on, Gaza and Hebron both observe DST,
4577    with the predicted rules being the last Thursday in March at 24:00
4578    to the first Friday on or after September 21 at 01:00.
4579
4580    Assume that the recent change to Paraguay's DST rules is permanent,
4581    by moving the end of DST to the 4th Sunday in March every year.
4582    (Thanks to Carlos Raúl Perasso.)
4583
4584  Changes affecting past timestamps:
4585
4586    Fix some historical data for Palestine to agree with that of
4587    timeanddate.com, as follows:
4588
4589	  The spring 2008 change in Gaza and Hebron was on 00:00 Mar 28, not
4590	  00:00 Apr 1.
4591
4592	  The fall 2009 change in Gaza and Hebron on Sep 4 was at 01:00, not
4593	  02:00.
4594
4595	  The spring 2010 change in Hebron was 00:00 Mar 26, not 00:01 Mar 27.
4596
4597	  The spring 2011 change in Gaza was 00:01 Apr 1, not 12:01 Apr 2.
4598
4599	  The spring 2011 change in Hebron on Apr 1 was at 00:01, not 12:01.
4600
4601	  The fall 2011 change in Hebron on Sep 30 was at 00:00, not 03:00.
4602
4603    Fix times of habitation for Macquarie to agree with the Tasmania
4604    Parks & Wildlife Service history, which indicates that permanent
4605    habitation was 1899-1919 and 1948 on.
4606
4607  Changing affecting metadata only:
4608
4609    Macquarie Island is politically part of Australia, not Antarctica.
4610    (Thanks to Tobias Conradi.)
4611
4612    Sort Macquarie more consistently with other parts of Australia.
4613    (Thanks to Tim Parenti.)
4614
4615
4616Release 2013b - 2013-03-10 22:33:40 -0700
4617
4618  Changes affecting current and future timestamps:
4619
4620    Haiti uses US daylight-saving rules this year, and presumably future years.
4621    This changes timestamps starting today.  (Thanks to Steffen Thorsen.)
4622
4623    Paraguay will end DST on March 24 this year.
4624    (Thanks to Steffen Thorsen.)  For now, assume it's just this year.
4625
4626    Morocco does not observe DST during Ramadan;
4627    try to predict Ramadan in Morocco as best we can.
4628    (Thanks to Erik Homoet for the heads-up.)
4629
4630  Changes affecting commentary:
4631
4632    Update URLs in tz-link page.  Add URLs for webOS, BB10, iOS.
4633    Update URL for Solaris.  Mention Internet RFC 6557.
4634    Update Internet RFCs 2445->5545, 2822->5322.
4635    Switch from FTP to HTTP for Internet RFCs.
4636
4637
4638Release 2013a - 2013-02-27 09:20:35 -0800
4639
4640  Change affecting binary data format:
4641
4642    The zone offset at the end of version-2-format zone files is now
4643    allowed to be 24:00, as per POSIX.1-2008.  (Thanks to Arthur David Olson.)
4644
4645  Changes affecting current and future timestamps:
4646
4647    Chile's 2013 rules, and we guess rules for 2014 and later, will be
4648    the same as 2012, namely Apr Sun>=23 03:00 UTC to Sep Sun>=2 04:00 UTC.
4649    (Thanks to Steffen Thorsen and Robert Elz.)
4650
4651    New Zones Asia/Khandyga, Asia/Ust-Nera, Europe/Busingen.
4652    (Thanks to Tobias Conradi and Arthur David Olson.)
4653
4654  Many changes affect historical timestamps before 1940.
4655  These were deduced from: Milne J. Civil time. Geogr J. 1899
4656  Feb;13(2):173-94 <https://www.jstor.org/stable/1774359>.
4657
4658  Changes affecting the code:
4659
4660    Fix zic bug that mishandled Egypt's 2010 changes (this also affected
4661    the data).  (Thanks to Arthur David Olson.)
4662
4663    Fix localtime bug when time_t is unsigned and data files were generated
4664    by a signed time_t system.  (Thanks to Doug Bailey for reporting and
4665    to Arthur David Olson for fixing.)
4666
4667    Allow the email address for bug reports to be set by the packager.
4668    The default is tz@iana.org, as before.  (Thanks to Joseph S. Myers.)
4669
4670    Update HTML checking to be compatible with Ubuntu 12.10.
4671
4672    Check that files are a safe subset of ASCII.  At some point we may
4673    relax this requirement to a safe subset of UTF-8.  Without the
4674    check, some non-UTF-8 encodings were leaking into the distribution.
4675
4676  Commentary changes:
4677
4678    Restore a comment about copyright notices that was inadvertently deleted.
4679    (Thanks to Arthur David Olson.)
4680
4681    Improve the commentary about which districts observe what times
4682    in Russia.  (Thanks to Oscar van Vlijmen and Arthur David Olson.)
4683
4684    Add web page links to tz.js.
4685
4686    Add "Run by the Monkeys" to tz-art.  (Thanks to Arthur David Olson.)
4687
4688
4689Release 2012j - 2012-11-12 18:34:49 -0800
4690
4691  Libya moved to CET this weekend, but with DST planned next year.
4692  (Thanks to Even Scharning, Steffen Thorsen, and Tim Parenti.)
4693
4694  Signatures now have the extension .asc, not .sign, as that's more
4695  standard.  (Thanks to Phil Pennock.)
4696
4697  The output of 'zdump --version', and of 'zic --version', now
4698  uses a format that is more typical for --version.
4699  (Thanks to Joseph S. Myers.)
4700
4701  The output of 'tzselect --help', 'zdump --help', and 'zic --help'
4702  now uses tz@iana.org rather than the old elsie address.
4703
4704  zic -v now complains about abbreviations that are less than 3
4705  or more than 6 characters, as per POSIX.  Formerly, it checked
4706  for abbreviations that were more than 3.
4707
4708  'make public' no longer puts its temporary directory under /tmp,
4709  and uses the just-built zic rather than the system zic.
4710
4711  Various fixes to documentation and commentary.
4712
4713
4714Release 2012i - 2012-11-03 12:57:09 -0700
4715
4716  Cuba switches from DST tomorrow at 01:00.  (Thanks to Steffen Thorsen.)
4717
4718  Linker flags can now be specified via LDFLAGS.
4719  AWK now defaults to 'awk', not 'nawk'.
4720  The shell in tzselect now defaults to /bin/bash, but this can
4721  be overridden by specifying KSHELL.
4722  The main web page now mentions the unofficial GitHub repository.
4723  (Thanks to Mike Frysinger.)
4724
4725  Tarball signatures can now be built by running 'make signatures'.
4726  There are also new makefile rules 'tarballs', 'check_public', and
4727  separate makefile rules for each tarball and signature file.
4728  A few makefile rules are now more portable to strict POSIX.
4729
4730  The main web page now lists the canonical IANA URL.
4731
4732
4733Release 2012h - 2012-10-26 22:49:10 -0700
4734
4735  Bahia no longer has DST.  (Thanks to Kelley Cook.)
4736
4737  Tocantins has DST.  (Thanks to Rodrigo Severo.)
4738
4739  Israel has new DST rules next year.  (Thanks to Ephraim Silverberg.)
4740
4741  Jordan stays on DST this winter.  (Thanks to Steffen Thorsen.)
4742
4743  Web page updates.
4744
4745  More C modernization, except that at Arthur David Olson's suggestion
4746  the instances of 'register' were kept.
4747
4748
4749Release 2012g - 2012-10-17 20:59:45 -0700
4750
4751  Samoa fall 2012 and later.  (Thanks to Nicholas Pereira and Robert Elz.)
4752
4753  Palestine fall 2012.  (Thanks to Steffen Thorsen.)
4754
4755  Assume C89.
4756
4757  To attack the version-number problem, this release ships the file
4758  'Makefile' (which contains the release number) in both the tzcode and
4759  the tzdata tarballs.  The two Makefiles are identical, and should be
4760  identical in any matching pair of tarballs, so it shouldn't matter
4761  which order you extract the tarballs.  Perhaps we can come up with a
4762  better version-number scheme at some point; this scheme does have the
4763  virtue of not adding more files.
4764
4765
4766Release 2012f - 2012-09-12 23:17:03 -0700
4767
4768  * australasia (Pacific/Fiji): Fiji DST is October 21 through January
4769    20 this year.  (Thanks to Steffen Thorsen.)
4770
4771
4772Release 2012e - 2012-08-02 20:44:55 -0700
4773
4774  * australasia (Pacific/Fakaofo): Tokelau is UT +13, not +14.
4775    (Thanks to Steffen Thorsen.)
4776
4777  * Use a single version number for both code and data.
4778
4779  * .gitignore: New file.
4780
4781  * Remove trailing white space.
4782
4783
4784Release code2012c-data2012d - 2012-07-19 16:35:33 -0700
4785
4786  Changes for Morocco's timestamps, which take effect in a couple of
4787  hours, along with infrastructure changes to accommodate how the tz
4788  code and data are released on IANA.
4789
4790
4791Release data2012c - 2012-03-27 12:17:25 -0400
4792
4793  africa
4794	Summer time changes for Morocco (to start late April 2012)
4795
4796  asia
4797	Changes for 2012 for Gaza & the West Bank (Hebron) and Syria
4798
4799  northamerica
4800	Haiti following US/Canada rules for 2012 (and we're assuming,
4801	for now anyway, for the future).
4802
4803
4804Release 2012b - 2012-03-02 12:29:15 +0700
4805
4806  There is just one change to tzcode2012b (compared with 2012a):
4807  the Makefile that was accidentally included with 2012a has been
4808  replaced with the version that should have been there, which is
4809  identical with the previous version (from tzcode2011i).
4810
4811  There are just two changes in tzdata2012b compared with 2012a.
4812
4813  Most significantly, summer time in Cuba has been delayed 3 weeks
4814  (now starts April 1 rather than March 11).   Since Mar 11 (the old start
4815  date, as listed in 2012a) is just a little over a week away, this
4816  change is urgent.
4817
4818  Less importantly, an excess tab in one of the changes in zone.tab
4819  in 2012a has been removed.
4820
4821
4822Release 2012a - 2012-03-01 18:28:10 +0700
4823
4824  The changes in tzcode2012a (compared to the previous version, 2011i)
4825  are entirely to the README and tz-art.htm and tz-link.htm files, if
4826  none of those concern you, you can ignore the code update.  The changes
4827  reflect the changed addresses for the mailing list and the code and
4828  data distribution points & methods (and a link to DateTime::TimeZone::Tzfile
4829  has been added to tz-link.htm).
4830
4831  In tzdata2012a (compared to the previous release, which was 2011n)
4832  the major changes are:
4833	Chile 2011/2012 and 2012/2013 summer time date adjustments.
4834	Falkland Islands onto permanent summer time (we're assuming for the
4835		foreseeable future, though 2012 is all we're fairly certain of.)
4836	Armenia has abolished Summer Time.
4837	Tokelau jumped the International Date Line back last December
4838		(just the same as their near neighbour, Samoa).
4839	America/Creston is a new zone for a small area of British Columbia
4840	There will be a leapsecond 2012-06-30 23:59:60 UTC.
4841
4842  Other minor changes are:
4843	Corrections to 1918 Canadian summer time end dates.
4844	Updated URL for UK time zone history (in comments)
4845	A few typos in Le Corre's list of free French place names (comments)
4846
4847
4848Release data2011n - 2011-10-30 14:57:54 +0700
4849
4850  There are three changes of note - most urgently, Cuba (America/Havana)
4851  has extended summer time by two weeks, now to end on Nov 13, rather than
4852  the (already past) Oct 30.   Second, the Pridnestrovian Moldavian Republic
4853  (Europe/Tiraspol) decided not to split from the rest of Moldova after
4854  all, and consequently that zone has been removed (again) and reinstated
4855  in the "backward" file as a link to Europe/Chisinau.   And third, the
4856  end date for Fiji's summer time this summer was moved forward from the
4857  earlier planned Feb 26, to Jan 22.
4858
4859  Apart from that, Moldova (MD) returns to a single entry in zone.tab
4860  (and the incorrect syntax that was in the 2011m version of that file
4861  is so fixed - it would have been fixed in a different way had this
4862  change not happened - that's the "missing" sccs version id).
4863
4864
4865Release data2011m - 2011-10-24 21:42:16 +0700
4866
4867  In particular, the typos in comments in the data (2011-11-17 should have
4868  been 2011-10-17 as Alan Barrett noted, and spelling of Tiraspol that
4869  Tim Parenti noted) have been fixed, and the change for Ukraine has been
4870  made in all 4 Ukrainian zones, rather than just Europe/Kiev
4871  (again, thanks to Tim Parenti, and also Denys Gavrysh).
4872
4873  In addition, I added Europe/Tiraspol to zone.tab.
4874
4875  This time, all the files have new version numbers...  (including the files
4876  otherwise unchanged in 2011m that were changed in 2011l but didn't get new
4877  version numbers there...)
4878
4879
4880Release data2011l - 2011-10-10 11:15:43 +0700
4881
4882  There are just 2 changes that cause different generated tzdata files from
4883  zic, to Asia/Hebron and Pacific/Fiji - the possible change for Bahia, Brazil
4884  is included, but commented out.  Compared with the diff I sent out last week,
4885  this version also includes attributions for the sources for the changes
4886  (in much the same format as ado used, but the html tags have not been
4887  checked, verified, or used in any way at all, so if there are errors there,
4888  please let me know.)
4889
4890
4891Release data2011k - 2011-09-20 17:54:03 -0400
4892
4893  [not summarized]
4894
4895
4896Release data2011j - 2011-09-12 09:22:49 -0400
4897
4898  (contemporary changes for Samoa; past changes for Kenya, Uganda, and
4899  Tanzania); there are also two spelling corrections to comments in
4900  the australasia file (with thanks to Christos Zoulas).
4901
4902
4903Release 2011i - 2011-08-29 05:56:32 -0400
4904
4905  [not summarized]
4906
4907
4908Release data2011h - 2011-06-15 18:41:48 -0400
4909
4910  Russia and Curaçao changes
4911
4912
4913Release 2011g - 2011-04-25 09:07:22 -0400
4914
4915  update the rules for Egypt to reflect its abandonment of DST this year
4916
4917
4918Release 2011f - 2011-04-06 17:14:53 -0400
4919
4920  [not summarized]
4921
4922
4923Release 2011e - 2011-03-31 16:04:38 -0400
4924
4925  Morocco, Chile, and tz-link changes
4926
4927
4928Release 2011d - 2011-03-14 09:18:01 -0400
4929
4930  changes that impact present-day timestamps in Cuba, Samoa, and Turkey
4931
4932
4933Release 2011c - 2011-03-07 09:30:09 -0500
4934
4935  These do affect current timestamps in Chile and Annette Island, Canada.
4936
4937
4938Release 2011b - 2011-02-07 08:44:50 -0500
4939
4940  [not summarized]
4941
4942
4943Release 2011a - 2011-01-24 10:30:16 -0500
4944
4945  [not summarized]
4946
4947
4948Release data2010o - 2010-11-01 09:18:23 -0400
4949
4950  change to the end of DST in Fiji in 2011
4951
4952
4953Release 2010n - 2010-10-25 08:19:17 -0400
4954
4955  [not summarized]
4956
4957
4958Release 2010m - 2010-09-27 09:24:48 -0400
4959
4960  Hong Kong, Vostok, and zic.c changes
4961
4962
4963Release 2010l - 2010-08-16 06:57:25 -0400
4964
4965  [not summarized]
4966
4967
4968Release 2010k - 2010-07-26 10:42:27 -0400
4969
4970  [not summarized]
4971
4972
4973Release 2010j - 2010-05-10 09:07:48 -0400
4974
4975  changes for Bahía de Banderas and for version naming
4976
4977
4978Release data2010i - 2010-04-16 18:50:45 -0400
4979
4980  the end of DST in Morocco on 2010-08-08
4981
4982
4983Release data2010h - 2010-04-05 09:58:56 -0400
4984
4985  [not summarized]
4986
4987
4988Release data2010g - 2010-03-24 11:14:53 -0400
4989
4990  [not summarized]
4991
4992
4993Release 2010f - 2010-03-22 09:45:46 -0400
4994
4995  [not summarized]
4996
4997
4998Release data2010e - 2010-03-08 14:24:27 -0500
4999
5000  corrects the Dhaka bug found by Danvin Ruangchan
5001
5002
5003Release data2010d - 2010-03-06 07:26:01 -0500
5004
5005  [not summarized]
5006
5007
5008Release 2010c - 2010-03-01 09:20:58 -0500
5009
5010  changes including KRE's suggestion for earlier initialization of
5011  "goahead" and "goback" structure elements
5012
5013
5014Release code2010a - 2010-02-16 10:40:04 -0500
5015
5016  [not summarized]
5017
5018
5019Release data2010b - 2010-01-20 12:37:01 -0500
5020
5021  Mexico changes
5022
5023
5024Release data2010a - 2010-01-18 08:30:04 -0500
5025
5026  changes to Dhaka
5027
5028
5029Release data2009u - 2009-12-26 08:32:28 -0500
5030
5031  changes to DST in Bangladesh
5032
5033
5034Release 2009t - 2009-12-21 13:24:27 -0500
5035
5036  [not summarized]
5037
5038
5039Release data2009s - 2009-11-14 10:26:32 -0500
5040
5041  (cosmetic) Antarctica change and the DST-in-Fiji-in-2009-and-2010 change
5042
5043
5044Release 2009r - 2009-11-09 10:10:31 -0500
5045
5046  "antarctica" and "tz-link.htm" changes
5047
5048
5049Release 2009q - 2009-11-02 09:12:40 -0500
5050
5051  with two corrections as reported by Eric Muller and Philip Newton
5052
5053
5054Release data2009p - 2009-10-23 15:05:27 -0400
5055
5056  Argentina (including San Luis) changes (with the correction from
5057  Mariano Absatz)
5058
5059
5060Release data2009o - 2009-10-14 16:49:38 -0400
5061
5062  Samoa (commentary only), Pakistan, and Bangladesh changes
5063
5064
5065Release data2009n - 2009-09-22 15:13:38 -0400
5066
5067  added commentary for Argentina and a change to the end of DST in
5068  2009 in Pakistan
5069
5070
5071Release data2009m - 2009-09-03 10:23:43 -0400
5072
5073  Samoa and Palestine changes
5074
5075
5076Release data2009l - 2009-08-14 09:13:07 -0400
5077
5078  Samoa (comments only) and Egypt
5079
5080
5081Release 2009k - 2009-07-20 09:46:08 -0400
5082
5083  [not summarized]
5084
5085
5086Release data2009j - 2009-06-15 06:43:59 -0400
5087
5088  Bangladesh change (with a short turnaround since the DST change is
5089  impending)
5090
5091
5092Release 2009i - 2009-06-08 09:21:22 -0400
5093
5094  updating for DST in Bangladesh this year
5095
5096
5097Release 2009h - 2009-05-26 09:19:14 -0400
5098
5099  [not summarized]
5100
5101
5102Release data2009g - 2009-04-20 16:34:07 -0400
5103
5104  Cairo
5105
5106
5107Release data2009f - 2009-04-10 11:00:52 -0400
5108
5109  correct DST in Pakistan
5110
5111
5112Release 2009e - 2009-04-06 09:08:11 -0400
5113
5114  [not summarized]
5115
5116
5117Release 2009d - 2009-03-23 09:38:12 -0400
5118
5119  Morocco, Tunisia, Argentina, and American Astronomical Society changes
5120
5121
5122Release data2009c - 2009-03-16 09:47:51 -0400
5123
5124  change to the start of Cuban DST
5125
5126
5127Release 2009b - 2009-02-09 11:15:22 -0500
5128
5129  [not summarized]
5130
5131
5132Release 2009a - 2009-01-21 10:09:39 -0500
5133
5134  [not summarized]
5135
5136
5137Release data2008i - 2008-10-21 12:10:25 -0400
5138
5139  southamerica and zone.tab files, with Argentina DST rule changes and
5140  United States zone reordering and recommenting
5141
5142
5143Release 2008h - 2008-10-13 07:33:56 -0400
5144
5145  [not summarized]
5146
5147
5148Release 2008g - 2008-10-06 09:03:18 -0400
5149
5150  Fix a broken HTML anchor and update Brazil's DST transitions;
5151  there's also a slight reordering of information in tz-art.htm.
5152
5153
5154Release data2008f - 2008-09-09 22:33:26 -0400
5155
5156  [not summarized]
5157
5158
5159Release 2008e - 2008-07-28 14:11:17 -0400
5160
5161  changes by Arthur David Olson and Jesper Nørgaard Welen
5162
5163
5164Release data2008d - 2008-07-07 09:51:38 -0400
5165
5166  changes by Arthur David Olson, Paul Eggert, and Rodrigo Severo
5167
5168
5169Release data2008c - 2008-05-19 17:48:03 -0400
5170
5171  Pakistan, Morocco, and Mongolia
5172
5173
5174Release data2008b - 2008-03-24 08:30:59 -0400
5175
5176  including renaming Asia/Calcutta to Asia/Kolkata, with a backward
5177  link provided
5178
5179
5180Release 2008a - 2008-03-08 05:42:16 -0500
5181
5182  [not summarized]
5183
5184
5185Release 2007k - 2007-12-31 10:25:22 -0500
5186
5187  most importantly, changes to the "southamerica" file based on
5188  Argentina's readoption of daylight saving time
5189
5190
5191Release 2007j - 2007-12-03 09:51:01 -0500
5192
5193  1. eliminate the "P" (parameter) macro;
5194
5195  2. the "noncontroversial" changes circulated on the time zone
5196  mailing list (less the changes to "logwtmp.c");
5197
5198  3. eliminate "too many transition" errors when "min" is used in time
5199  zone rules;
5200
5201  4. changes by Paul Eggert (including updated information for Venezuela).
5202
5203
5204Release data2007i - 2007-10-30 10:28:11 -0400
5205
5206  changes for Cuba and Syria
5207
5208
5209Release 2007h - 2007-10-01 10:05:51 -0400
5210
5211  changes by Paul Eggert, as well as an updated link to the ICU
5212  project in tz-link.htm
5213
5214
5215Release 2007g - 2007-08-20 10:47:59 -0400
5216
5217  changes by Paul Eggert
5218
5219  The "leapseconds" file has been updated to incorporate the most
5220  recent International Earth Rotation and Reference Systems Service
5221  (IERS) bulletin.
5222
5223  There's an addition to tz-art.htm regarding the television show "Medium".
5224
5225
5226Release 2007f - 2007-05-07 10:46:46 -0400
5227
5228  changes by Paul Eggert (including Haiti, Turks and Caicos, and New
5229  Zealand)
5230
5231  changes to zic.c to allow hour values greater than 24 (along with
5232  Paul's improved time value overflow checking)
5233
5234
5235Release 2007e - 2007-04-02 10:11:52 -0400
5236
5237  Syria and Honduras changes by Paul Eggert
5238
5239  zic.c variable renaming changes by Arthur David Olson
5240
5241
5242Release 2007d - 2007-03-20 08:48:30 -0400
5243
5244  changes by Paul Eggert
5245
5246  the elimination of white space at the ends of lines
5247
5248
5249Release 2007c - 2007-02-26 09:09:37 -0500
5250
5251  changes by Paul Eggert
5252
5253
5254Release 2007b - 2007-02-12 09:34:20 -0500
5255
5256  Paul Eggert's proposed change to the quotation handling logic in zic.c.
5257
5258  changes to the commentary in "leapseconds" reflecting the IERS
5259  announcement that there is to be no positive leap second at the end
5260  of June 2007.
5261
5262
5263Release 2007a - 2007-01-08 12:28:29 -0500
5264
5265  changes by Paul Eggert
5266
5267  Derick Rethans's Asmara change
5268
5269  Oscar van Vlijmen's Easter Island local mean time change
5270
5271  symbolic link changes
5272
5273
5274Release 2006p - 2006-11-27 08:54:27 -0500
5275
5276  changes by Paul Eggert
5277
5278
5279Release 2006o - 2006-11-06 09:18:07 -0500
5280
5281  changes by Paul Eggert
5282
5283
5284Release 2006n - 2006-10-10 11:32:06 -0400
5285
5286  changes by Paul Eggert
5287
5288
5289Release 2006m - 2006-10-02 15:32:35 -0400
5290
5291  changes for Uruguay, Palestine, and Egypt by Paul Eggert
5292
5293  (minimalist) changes to zic.8 to clarify "until" information
5294
5295
5296Release data2006l - 2006-09-18 12:58:11 -0400
5297
5298  Paul's best-effort work on this coming weekend's Egypt time change
5299
5300
5301Release 2006k - 2006-08-28 12:19:09 -0400
5302
5303  changes by Paul Eggert
5304
5305
5306Release 2006j - 2006-08-21 09:56:32 -0400
5307
5308  changes by Paul Eggert
5309
5310
5311Release code2006i - 2006-08-07 12:30:55 -0400
5312
5313  localtime.c fixes
5314
5315  Ken Pizzini's conversion script
5316
5317
5318Release code2006h - 2006-07-24 09:19:37 -0400
5319
5320  adds public domain notices to four files
5321
5322  includes a fix for transition times being off by a second
5323
5324  adds a new recording to the "arts" file (information courtesy Colin Bowern)
5325
5326
5327Release 2006g - 2006-05-08 17:18:09 -0400
5328
5329  northamerica changes by Paul Eggert
5330
5331
5332Release 2006f - 2006-05-01 11:46:00 -0400
5333
5334  a missing version number problem is fixed (with thanks to Bradley
5335  White for catching the problem)
5336
5337
5338Release 2006d - 2006-04-17 14:33:43 -0400
5339
5340  changes by Paul Eggert
5341
5342  added new items to tz-arts.htm that were found by Paul
5343
5344
5345Release 2006c - 2006-04-03 10:09:32 -0400
5346
5347  two sets of data changes by Paul Eggert
5348
5349  a fencepost error fix in zic.c
5350
5351  changes to zic.c and the "europe" file to minimize differences
5352  between output produced by the old 32-bit zic and the new 64-bit
5353  version
5354
5355
5356Release 2006b - 2006-02-20 10:08:18 -0500
5357  [tz32code2006b + tz64code2006b + tzdata2006b]
5358
5359  64-bit code
5360
5361  All SCCS IDs were bumped to "8.1" for this release.
5362
5363
5364Release 2006a - 2006-01-30 08:59:31 -0500
5365
5366  changes by Paul Eggert (in particular, Indiana time zone moves)
5367
5368  an addition to the zic manual page to describe how special-case
5369  transitions are handled
5370
5371
5372Release 2005r - 2005-12-27 09:27:13 -0500
5373
5374  Canadian changes by Paul Eggert
5375
5376  They also add "<pre>" directives to time zone data files and reflect
5377  changes to warning message logic in "zdump.c" (but with calls to
5378  "gettext" kept unbundled at the suggestion of Ken Pizzini).
5379
5380
5381Release 2005q - 2005-12-13 09:17:09 -0500
5382
5383  Nothing earth-shaking here:
5384	1.  Electronic mail addresses have been removed.
5385	2.  Casts of the return value of exit have been removed.
5386	3.  Casts of the argument of is.* macros have been added.
5387	4.  Indentation in one section of zic.c has been fixed.
5388	5.  References to dead URLs in the data files have been dealt with.
5389
5390
5391Release 2005p - 2005-12-05 10:30:53 -0500
5392
5393  "systemv", "tz-link.htm", and "zdump.c" changes
5394  (less the casts of arguments to the is* macros)
5395
5396
5397Release 2005o - 2005-11-28 10:55:26 -0500
5398
5399  Georgia, Cuba, Nicaragua, and Jordan changes by Paul Eggert
5400
5401  zdump.c lint fixes by Arthur David Olson
5402
5403
5404Release 2005n - 2005-10-03 09:44:09 -0400
5405
5406  changes by Paul Eggert (both the Uruguay changes and the Kyrgyzstan
5407  et al. changes)
5408
5409
5410Release 2005m - 2005-08-29 12:15:40 -0400
5411
5412  changes by Paul Eggert (with a small tweak to the tz-art change)
5413
5414  a declaration of an unused variable has been removed from zdump.c
5415
5416
5417Release 2005l - 2005-08-22 12:06:39 -0400
5418
5419  changes by Paul Eggert
5420
5421  overflow/underflow checks by Arthur David Olson, minus changes to
5422  the "Theory" file about the pending addition of 64-bit data (I grow
5423  less confident of the changes being accepted with each passing day,
5424  and the changes no longer increase the data files nine-fold--there's
5425  less than a doubling in size by my local Sun's reckoning)
5426
5427
5428Release 2005k - 2005-07-14 14:14:24 -0400
5429
5430  The "leapseconds" file has been edited to reflect the recently
5431  announced leap second at the end of 2005.
5432
5433  I've also deleted electronic mail addresses from the files as an
5434  anti-spam measure.
5435
5436
5437Release 2005j - 2005-06-13 14:34:13 -0400
5438
5439  These reflect changes to limit the length of time zone abbreviations
5440  and the characters used in those abbreviations.
5441
5442  There are also changes to handle POSIX-style "quoted" timezone
5443  environment variables.
5444
5445  The changes were circulated on the time zone mailing list; the only
5446  change since then was the removal of a couple of minimum-length of
5447  abbreviation checks.
5448
5449
5450Release data2005i - 2005-04-21 15:04:16 -0400
5451
5452  changes (most importantly to Nicaragua and Haiti) by Paul Eggert
5453
5454
5455Release 2005h - 2005-04-04 11:24:47 -0400
5456
5457  changes by Paul Eggert
5458
5459  minor changes to Makefile and zdump.c to produce more useful output
5460  when doing a "make typecheck"
5461
5462
5463Release 2005g - 2005-03-14 10:11:21 -0500
5464
5465  changes by Paul Eggert (a change to current DST rules in Uruguay and
5466  an update to a link to time zone software)
5467
5468
5469Release 2005f - 2005-03-01 08:45:32 -0500
5470
5471  data and documentation changes by Paul Eggert
5472
5473
5474Release 2005e - 2005-02-10 15:59:44 -0500
5475
5476  [not summarized]
5477
5478
5479Release code2005d - 2005-01-31 09:21:47 -0500
5480
5481  make zic complain about links to links if the -v flag is used
5482
5483  have "make public" do more code checking
5484
5485  add an include to "localtime.c" for the benefit of gcc systems
5486
5487
5488Release 2005c - 2005-01-17 18:36:29 -0500
5489
5490  get better results when mktime runs on a system where time_t is double
5491
5492  changes to the data files (most importantly to Paraguay)
5493
5494
5495Release 2005b - 2005-01-10 09:19:54 -0500
5496
5497  Get localtime and gmtime working on systems with exotic time_t types.
5498
5499  Update the leap second commentary in the "leapseconds" file.
5500
5501
5502Release 2005a - 2005-01-01 13:13:44 -0500
5503
5504  [not summarized]
5505
5506
5507Release code2004i - 2004-12-14 13:42:58 -0500
5508
5509  Deal with systems where time_t is unsigned.
5510
5511
5512Release code2004h - 2004-12-07 11:40:18 -0500
5513
5514  64-bit-time_t changes
5515
5516
5517Release 2004g - 2004-11-02 09:06:01 -0500
5518
5519  update to Cuba (taking effect this weekend)
5520
5521  other changes by Paul Eggert
5522
5523  correction of the spelling of Oslo
5524
5525  changed versions of difftime.c and private.h
5526
5527
5528Release code2004f - 2004-10-21 10:25:22 -0400
5529
5530  Cope with wide-ranging tm_year values.
5531
5532
5533Release 2004e - 2004-10-11 14:47:21 -0400
5534
5535  Brazil/Argentina/Israel changes by Paul Eggert
5536
5537  changes to tz-link.htm by Paul
5538
5539  one small fix to Makefile
5540
5541
5542Release 2004d - 2004-09-22 08:27:29 -0400
5543
5544  Avoid overflow problems when TM_YEAR_BASE is added to an integer.
5545
5546
5547Release 2004c - 2004-08-11 12:06:26 -0400
5548
5549  asctime-related changes
5550
5551  (variants of) some of the documentation changes suggested by Paul Eggert
5552
5553
5554Release 2004b - 2004-07-19 14:33:35 -0400
5555
5556  data changes by Paul Eggert - most importantly, updates for Argentina
5557
5558
5559Release 2004a - 2004-05-27 12:00:47 -0400
5560
5561  changes by Paul Eggert
5562
5563  Handle DST transitions that occur at the end of a month in some
5564  years but at the start of the following month in other years.
5565
5566  Add a copy of the correspondence that's the basis for claims about
5567  DST in the Navajo Nation.
5568
5569
5570Release 2003e - 2003-12-15 09:36:47 -0500
5571
5572  changes by Arthur David Olson (primarily code changes)
5573
5574  changes by Paul Eggert (primarily data changes)
5575
5576  minor changes to "Makefile" and "northamerica" (in the latter case,
5577  optimization of the "Toronto" rules)
5578
5579
5580Release 2003d - 2003-10-06 09:34:44 -0400
5581
5582  changes by Paul Eggert
5583
5584
5585Release 2003c - 2003-09-16 10:47:05 -0400
5586
5587  Fix bad returns in zic.c's inleap function.
5588  Thanks to Bradley White for catching the problem!
5589
5590
5591Release 2003b - 2003-09-16 07:13:44 -0400
5592
5593  Add a "--version" option (and documentation) to the zic and zdump commands.
5594
5595  changes to overflow/underflow checking in zic
5596
5597  a localtime typo fix.
5598
5599  Update the leapseconds and tz-art.htm files.
5600
5601
5602Release 2003a - 2003-03-24 09:30:54 -0500
5603
5604  changes by Paul Eggert
5605
5606  a few additions and modifications to the tz-art.htm file
5607
5608
5609Release 2002d - 2002-10-15 13:12:42 -0400
5610
5611  changes by Paul Eggert, less the "Britain (UK)" change in iso3166.tab
5612
5613  There's also a new time zone quote in "tz-art.htm".
5614
5615
5616Release 2002c - 2002-04-04 11:55:20 -0500
5617
5618  changes by Paul Eggert
5619
5620  Change zic.c to avoid creating symlinks to files that don't exist.
5621
5622
5623Release 2002b - 2002-01-28 12:56:03 -0500
5624
5625  [These change notes are for Release 2002a, which was corrupted.
5626  2002b was a corrected version of 2002a.]
5627
5628  changes by Paul Eggert
5629
5630  Update the "leapseconds" file to note that there'll be no leap
5631  second at the end of June, 2002.
5632
5633  Change "zic.c" to deal with a problem in handling the "Asia/Bishkek" zone.
5634
5635  Change to "difftime.c" to avoid sizeof problems.
5636
5637
5638Release 2001d - 2001-10-09 13:31:32 -0400
5639
5640  changes by Paul Eggert
5641
5642
5643Release 2001c - 2001-06-05 13:59:55 -0400
5644
5645  changes by Paul Eggert and Andrew Brown
5646
5647
5648Release 2001b - 2001-04-05 16:44:38 -0400
5649
5650  changes by Paul Eggert (modulo jnorgard's typo fix)
5651
5652  tz-art.htm has been HTMLified.
5653
5654
5655Release 2001a - 2001-03-13 12:57:44 -0500
5656
5657  changes by Paul Eggert
5658
5659  An addition to the "leapseconds" file: comments with the text of the
5660  latest IERS leap second notice.
5661
5662  Trailing white space has been removed from data file lines, and
5663  repeated spaces in "Rule Jordan" lines in the "asia" file have been
5664  converted to tabs.
5665
5666
5667Release 2000h - 2000-12-14 15:33:38 -0500
5668
5669  changes by Paul Eggert
5670
5671  one typo fix in the "art" file
5672
5673  With providence, this is the last update of the millennium.
5674
5675
5676Release 2000g - 2000-10-10 11:35:22 -0400
5677
5678  changes by Paul Eggert
5679
5680  correction of John Mackin's name submitted by Robert Elz
5681
5682  Garry Shandling's Daylight Saving Time joke (!?!) from the recent
5683  Emmy Awards broadcast.
5684
5685
5686Release 2000f - 2000-08-10 09:31:58 -0400
5687
5688  changes by Paul Eggert
5689
5690  Added information in "tz-art.htm" on a Seinfeld reference to DST.
5691
5692  Error checking and messages in the "yearistype" script have been
5693  improved.
5694
5695
5696Release 2000e - 2000-07-31 09:27:54 -0400
5697
5698  data changes by Paul Eggert
5699
5700  a change to the default value of the defined constant HAVE_STRERROR
5701
5702  the addition of a Dave Barry quote on DST to the tz-arts file
5703
5704
5705Release 2000d - 2000-04-20 15:43:04 -0400
5706
5707  changes to the documentation and code of strftime for C99 conformance
5708
5709  a bug fix for date.c
5710
5711  These are based on (though modified from) changes by Paul Eggert.
5712
5713
5714Release 2000c - 2000-03-04 10:31:43 -0500
5715
5716  changes by Paul Eggert
5717
5718
5719Release 2000b - 2000-02-21 12:16:29 -0500
5720
5721  changes by Paul Eggert and Joseph Myers
5722
5723  modest tweaks to the tz-art.htm and tz-link.htm files
5724
5725
5726Release 2000a - 2000-01-18 09:21:26 -0500
5727
5728  changes by Paul Eggert
5729
5730  The two hypertext documents have also been renamed.
5731
5732
5733Release code1999i-data1999j - 1999-11-15 18:43:22 -0500
5734
5735  Paul Eggert's changes
5736
5737  additions to the "zic" manual page and the "Arts.htm" file
5738
5739
5740Release code1999h-data1999i - 1999-11-08 14:55:21 -0500
5741
5742  [not summarized]
5743
5744
5745Release data1999h - 1999-10-07 03:50:29 -0400
5746
5747  changes by Paul Eggert to "europe" (most importantly, fixing
5748  Lithuania and Estonia)
5749
5750
5751Release 1999g - 1999-09-28 11:06:18 -0400
5752
5753  data changes by Paul Eggert (most importantly, the change for
5754  Lebanon that buys correctness for this coming Sunday)
5755
5756  The "code" file contains changes to "Makefile" and "checktab.awk" to
5757  allow better checking of time zone files before they are published.
5758
5759
5760Release 1999f - 1999-09-23 09:48:14 -0400
5761
5762  changes by Arthur David Olson and Paul Eggert
5763
5764
5765Release 1999e - 1999-08-17 15:20:54 -0400
5766
5767  changes circulated by Paul Eggert, although the change to handling
5768  of DST-specifying timezone names has been commented out for now
5769  (search for "XXX" in "localtime.c" for details).  These files also
5770  do not make any changes to the start of DST in Brazil.
5771
5772  In addition to Paul's changes, there are updates to "Arts.htm" and
5773  cleanups of URLs.
5774
5775
5776Release 1999d - 1999-03-30 11:31:07 -0500
5777
5778  changes by Paul Eggert
5779
5780  The Makefile's "make public" rule has also been changed to do a test
5781  compile of each individual time zone data file (which should help
5782  avoid problems such as the one we had with Nicosia).
5783
5784
5785Release 1999c - 1999-03-25 09:47:47 -0500
5786
5787  changes by Paul Eggert, most importantly the change for Chile.
5788
5789
5790Release 1999b - 1999-02-01 17:51:44 -0500
5791
5792  changes by Paul Eggert
5793
5794  code changes (suggested by Mani Varadarajan, mani at be.com) for
5795  correct handling of symbolic links when building using a relative directory
5796
5797  code changes to generate correct messages for failed links
5798
5799  updates to the URLs in Arts.htm
5800
5801
5802Release 1999a - 1999-01-19 16:20:29 -0500
5803
5804  error message internationalizations and corrections in zic.c and
5805  zdump.c (as suggested by Vladimir Michl, vladimir.michl at upol.cz,
5806  to whom thanks!)
5807
5808
5809Release code1998h-data1998i - 1998-10-01 09:56:10 -0400
5810
5811  changes for Brazil, Chile, and Germany
5812
5813  support for use of "24:00" in the input files for the time zone compiler
5814
5815
5816Release code1998g-data1998h - 1998-09-24 10:50:28 -0400
5817
5818  changes by Paul Eggert
5819
5820  correction to a define in the "private.h" file
5821
5822
5823Release data1998g - 1998-08-11 03:28:35 -0000
5824  [tzdata1998g.tar.gz is missing!]
5825
5826  Lithuanian change provided by mgedmin at pub.osf.it
5827
5828  Move creation of the GMT link with Etc/GMT to "etcetera" (from
5829  "backward") to ensure that the GMT file is created even where folks
5830  don't want the "backward" links (as suggested by Paul Eggert).
5831
5832
5833Release data1998f - 1998-07-20 13:50:00 -0000
5834  [tzdata1998f.tar.gz is missing!]
5835
5836  Update the "leapseconds" file to include the newly announced
5837  insertion at the end of 1998.
5838
5839
5840Release code1998f - 1998-06-01 10:18:31 -0400
5841
5842  addition to localtime.c by Guy Harris
5843
5844
5845Release 1998e - 1998-05-28 09:56:26 -0400
5846
5847  The Makefile is changed to produce zoneinfo-posix rather than
5848  zoneinfo/posix, and to produce zoneinfo-leaps rather than
5849  zoneinfo/right.
5850
5851  data changes by Paul Eggert
5852
5853  changes from Guy Harris to provide asctime_r and ctime_r
5854
5855  A usno1998 file (substantially identical to usno1997) has been added.
5856
5857
5858Release 1998d - 1998-05-14 11:58:34 -0400
5859
5860  changes to comments (in particular, elimination of references to CIA maps).
5861  "Arts.htm", "WWW.htm", "asia", and "australasia" are the only places
5862  where changes occur.
5863
5864
5865Release 1998c - 1998-02-28 12:32:26 -0500
5866
5867  changes by Paul Eggert (save the "French correction," on which I'll
5868  wait for the dust to settle)
5869
5870  symlink changes
5871
5872  changes and additions to Arts.htm
5873
5874
5875Release 1998b - 1998-01-17 14:31:51 -0500
5876
5877  URL cleanups and additions
5878
5879
5880Release 1998a - 1998-01-13 12:37:35 -0500
5881
5882  changes by Paul Eggert
5883
5884
5885Release code1997i-data1997k - 1997-12-29 09:53:41 -0500
5886
5887  changes by Paul Eggert, with minor modifications from Arthur David
5888  Olson to make the files more browser friendly
5889
5890
5891Release code1997h-data1997j - 1997-12-18 17:47:35 -0500
5892
5893  minor changes to put "TZif" at the start of each timezone information file
5894
5895  a rule has also been added to the Makefile so you can
5896	make zones
5897  to just recompile the zone information files (rather than doing a
5898  full "make install" with its other effects).
5899
5900
5901Release data1997i - 1997-10-07 08:45:38 -0400
5902
5903  changes to Africa by Paul Eggert
5904
5905
5906Release code1997g-data1997h - 1997-09-04 16:56:54 -0400
5907
5908  corrections for Uruguay (and other locations)
5909
5910  Arthur David Olson's simple-minded fix allowing mktime to both
5911  correctly handle leap seconds and correctly handle tm_sec values
5912  upon which arithmetic has been performed.
5913
5914
5915Release code1997f-data1997g - 1997-07-19 13:15:02 -0400
5916
5917  Paul Eggert's updates
5918
5919  a small change to a function prototype;
5920
5921  "Music" has been renamed "Arts.htm", HTMLified, and augmented to
5922  include information on Around the World in Eighty Days.
5923
5924
5925Release code1997e-data1997f - 1997-05-03 18:52:34 -0400
5926
5927  fixes to zic's error handling
5928
5929  changes inspired by the item circulated on Slovenia
5930
5931  The description of Web resources has been HTMLified for browsing
5932  convenience.
5933
5934  A new piece of tz-related music has been added to the "Music" file.
5935
5936
5937Release code1997d-data1997e - 1997-03-29 12:48:52 -0500
5938
5939  Paul Eggert's latest suggestions
5940
5941
5942Release code1997c-data1997d - 1997-03-07 20:37:54 -0500
5943
5944  changes to "zic.c" to correct performance of the "-s" option
5945
5946  a new file "usno1997"
5947
5948
5949Release data1997c - 1997-03-04 09:58:18 -0500
5950
5951  changes in Israel
5952
5953
5954Release 1997b - 1997-02-27 18:34:19 -0500
5955
5956  The data file incorporates the 1997 leap second.
5957
5958  The code file incorporates Arthur David Olson's take on the
5959  zic/multiprocessor/directory-creation situation.
5960
5961
5962Release 1997a - 1997-01-21 09:11:10 -0500
5963
5964  Paul Eggert's Antarctica (and other changes)
5965
5966  Arthur David Olson finessed the "getopt" issue by checking against
5967  both -1 and EOF (regardless of POSIX, SunOS 4.1.1's manual says -1
5968  is returned while SunOS 5.5's manual says EOF is returned).
5969
5970
5971Release code1996o-data1996n - 1996-12-27 21:42:05 -0500
5972
5973  Paul Eggert's latest changes
5974
5975
5976Release code1996n - 1996-12-16 09:42:02 -0500
5977
5978  link snapping fix from Bruce Evans (via Garrett Wollman)
5979
5980
5981Release data1996m - 1996-11-24 02:37:34 -0000
5982  [tzdata1996m.tar.gz is missing!]
5983
5984  Paul Eggert's batch of changes
5985
5986
5987Release code1996m-data1996l - 1996-11-05 14:00:12 -0500
5988
5989  No functional changes here; the files have simply been changed to
5990  make more use of ISO style dates in comments. The names of the above
5991  files now include the year in full.
5992
5993
5994Release code96l - 1996-09-08 17:12:20 -0400
5995
5996  tzcode96k was missing a couple of pieces.
5997
5998
5999Release 96k - 1996-09-08 16:06:22 -0400
6000
6001  the latest round of changes from Paul Eggert
6002
6003  the recent Year 2000 material
6004
6005
6006Release code96j - 1996-07-30 13:18:53 -0400
6007
6008  Set sp->typecnt as suggested by Timothy Patrick Murphy.
6009
6010
6011Release code96i - 1996-07-27 20:11:35 -0400
6012
6013  Paul's suggested patch for strftime %V week numbers
6014
6015
6016Release data96i - 1996-07-01 18:13:04 -0400
6017
6018  "northamerica" and "europe" changes by Paul Eggert
6019
6020
6021Release code96h - 1996-06-05 08:02:21 -0400
6022
6023  fix for handling transitions specified in Universal Time
6024
6025  Some "public domain" notices have also been added.
6026
6027
6028Release code96g - 1996-05-16 14:00:26 -0400
6029
6030  fix for the simultaneous-DST-and-zone-change challenge
6031
6032
6033Release data96h - 1996-05-09 17:40:51 -0400
6034
6035  changes by Paul Eggert
6036
6037
6038Release code96f-data96g - 1996-05-03 03:09:59 -0000
6039  [tzcode96f.tar.gz + tzdata96g.tar.gz are both missing!]
6040
6041  The changes get us some of the way to fixing the problems noted in Paul
6042  Eggert's letter yesterday (in addition to a few others).  The approach
6043  has been to make zic a bit smarter about figuring out what time zone
6044  abbreviations apply just after the time specified in the "UNTIL" part
6045  of a zone line.  Putting the smarts in zic means avoiding having
6046  transition times show up in both "Zone" lines and "Rule" lines, which
6047  in turn avoids multiple transition time entries in time zone files.
6048  (This also makes the zic input files such as "europe" a bit shorter and
6049  should ease maintenance.)
6050
6051
6052Release data96f - 1996-04-19 19:20:03 -0000
6053  [tzdata96f.tar.gz is missing!]
6054
6055  The only changes are to the "northamerica" file; the time zone
6056  abbreviation for Denver is corrected to MST (and MDT), and the
6057  comments for Mexico have been updated.
6058
6059
6060Release data96e - 1996-03-19 17:37:26 -0500
6061
6062  Proposals by Paul Eggert, in particular the Portugal change that
6063  comes into play at the end of this month.
6064
6065
6066Release data96d - 1996-03-18 20:49:39 -0500
6067
6068  [not summarized]
6069
6070
6071Release code96e - 1996-02-29 15:43:27 -0000
6072  [tzcode96e.tar.gz is missing!]
6073
6074  internationalization changes and the fix to the documentation for strftime
6075
6076
6077Release code96d-data96c - 1996-02-12 11:05:27 -0500
6078
6079  The "code" file simply updates Bob Kridle's electronic address.
6080
6081  The "data" file updates rules for Mexico.
6082
6083
6084Release data96b - 1996-01-27 15:44:42 -0500
6085
6086  Kiribati change
6087
6088
6089Release code96c - 1996-01-16 16:58:15 -0500
6090
6091  leap-year streamlining and binary-search changes
6092
6093  fix to newctime.3
6094
6095
6096Release code96b - 1996-01-10 20:42:39 -0500
6097
6098  fixes and enhancements from Paul Eggert, including code that
6099  emulates the behavior of recent versions of the SunOS "date"
6100  command.
6101
6102
6103Release 96a - 1996-01-06 09:08:24 -0500
6104
6105  Israel updates
6106
6107  fixes to strftime.c for correct ISO 8601 week number generation,
6108  plus support for two new formats ('G' and 'g') to give ISO 8601 year
6109  numbers (which are not necessarily the same as calendar year numbers)
6110
6111
6112Release code95i-data95m - 1995-12-21 12:46:47 -0500
6113
6114  The latest revisions from Paul Eggert are included, the usno1995
6115  file has been updated, and a new file ("WWW") covering useful URLs
6116  has been added.
6117
6118
6119Release code95h-data95l - 1995-12-19 18:10:12 -0500
6120
6121  A simplification of a macro definition, a change to data for Sudan,
6122  and (for last minute shoppers) notes in the "Music" file on the CD
6123  "Old Man Time".
6124
6125
6126Release code95g-data95k - 1995-10-30 10:32:47 -0500
6127
6128  (slightly reformatted) 8-bit-clean proposed patch
6129
6130  minor patch: US/Eastern -> America/New_York
6131
6132  snapshot of the USNO's latest data ("usno1995")
6133
6134  some other minor cleanups
6135
6136
6137Release code95f-data95j - 1995-10-28 21:01:34 -0000
6138  [tzcode95f.tar.gz + tzdata95j.tar.gz are both missing!]
6139
6140  European cleanups
6141
6142  support for 64-bit time_t's
6143
6144  optimization in localtime.c
6145
6146
6147Release code95e - 1995-10-13 13:23:57 -0400
6148
6149  the mktime change to scan from future to past when trying to find time zone
6150  offsets
6151
6152
6153Release data95i - 1995-09-26 10:43:26 -0400
6154
6155  For Canada/Central, guess that the Sun customer's "one week too
6156  early" was just a approximation, and the true error is one month
6157  too early.  This is consistent with the rest of Canada.
6158
6159
6160Release data95h - 1995-09-21 11:26:48 -0400
6161
6162  latest changes from Paul Eggert
6163
6164
6165Release code95d - 1995-09-14 11:14:45 -0400
6166
6167  the addition of a "Music" file, which documents four recorded
6168  versions of the tune "Save That Time".
6169
6170
6171Release data95g - 1995-09-01 17:21:36 -0400
6172
6173  "yearistype" correction
6174
6175
6176Release data95f - 1995-08-28 20:46:56 -0400
6177
6178  Paul Eggert's change to the australasia file
6179
6180
6181Release data95e - 1995-07-08 18:02:34 -0400
6182
6183  The only change is a leap second at the end of this year.
6184  Thanks to Bradley White for forwarding news on the leap second.
6185
6186
6187Release data95d - 1995-07-03 13:26:22 -0400
6188
6189  Paul Eggert's changes
6190
6191
6192Release data95c - 1995-07-02 19:19:28 -0400
6193
6194  changes to "asia", "backward", "europe", and "southamerica"
6195  (read: northamericacentrics need not apply)
6196
6197
6198Release code95c - 1995-03-13 14:00:46 -0500
6199
6200  one-line fix for sign extension problems in detzcode
6201
6202
6203Release 95b - 1995-03-04 11:22:38 -0500
6204
6205  Minor changes in both:
6206
6207  The "code" file contains a workaround for the lack of "unistd.h" in
6208  Microsoft C++ version 7.
6209
6210  The "data" file contains a fixed "Link" for America/Shiprock.
6211
6212
6213Release 94h - 1994-12-10 12:51:14 -0500
6214
6215  The files:
6216
6217  *	incorporate the changes to "zdump" and "date" to make changes to
6218	the "TZ" environment variable permanent;
6219
6220  *	incorporate the table changes by Paul Eggert;
6221
6222  *	include (and document) support for universal time specifications in
6223	data files - but do not (yet) include use of this feature in the
6224	data files.
6225
6226  Think of this as "TZ Classic" - the software has been set up not to break if
6227  universal time shows up in its input, and data entries have been
6228  left as is so as not to break existing implementations.
6229
6230
6231Release data94f - 1994-08-20 12:56:09 -0400
6232
6233  (with thanks!) the latest data updates from Paul Eggert
6234
6235
6236Release data94e - 1994-06-04 13:13:53 -0400
6237
6238  [not summarized]
6239
6240
6241Release code94g - 1994-05-05 12:14:07 -0400
6242
6243  fix missing "optind.c" and a reference to it in the Makefile
6244
6245
6246Release code94f - 1994-05-05 13:00:33 -0000
6247  [tzcode94f.tar.gz is missing!]
6248
6249  changes to avoid overflow in difftime, as well as changes to cope
6250  with the 52/53 challenge in strftime
6251
6252
6253Release code94e - 1994-03-30 23:32:59 -0500
6254
6255  change for the benefit of PCTS
6256
6257
6258Release 94d - 1994-02-24 15:42:25 -0500
6259
6260  Avoid clashes with POSIX semantics for zones such as GMT+4.
6261
6262  Some other very minor housekeeping is also present.
6263
6264
6265Release code94c - 1994-02-10 08:52:40 -0500
6266
6267  Fix bug where mkdirs was broken unless you compile with
6268  -fwritable-strings (which is generally losing to do).
6269
6270
6271Release 94b - 1994-02-07 10:04:33 -0500
6272
6273  work by Paul Eggert who notes:
6274
6275  I found another book of time zone histories by E W Whitman; it's not
6276  as extensive as Shanks but has a few goodies of its own.  I used it
6277  to update the tables.  I also fixed some more as a result of
6278  correspondence with Adam David and Peter Ilieve, and move some stray
6279  links from 'europe' to 'backward'.  I corrected some scanning errors
6280  in usno1989.
6281
6282  As far as the code goes, I fixed zic to allow years in the range
6283  INT_MIN to INT_MAX; this fixed a few boundary conditions around 1900.
6284  And I cleaned up the zic documentation a little bit.
6285
6286
6287Release data94a - 1994-02-03 08:58:54 -0500
6288
6289  It simply incorporates the recently announced leap second into the
6290  "leapseconds" file.
6291
6292
6293Release 93g - 1993-11-22 17:28:27 -0500
6294
6295  Paul Eggert has provided a good deal of historic information (based
6296  on Shanks), and there are some code changes to deal with the buglets
6297  that crawled out in dealing with the new information.
6298
6299
6300Release 93f - 1993-10-15 12:27:46 -0400
6301
6302  Paul Eggert's changes
6303
6304
6305Release 93e - 1993-09-05 21:21:44 -0400
6306
6307  This has updated data for Israel, England, and Kwajalein.  There's
6308  also an update to "zdump" to cope with Kwajalein's 24-hour jump.
6309  Thanks to Paul Eggert and Peter Ilieve for the changes.
6310
6311
6312Release 93d - 1993-06-17 23:34:17 -0400
6313
6314  new fix and new data on Israel
6315
6316
6317Release 93c - 1993-06-06 19:31:55 -0400
6318
6319  [not summarized]
6320
6321
6322Release 93b - 1993-02-02 14:53:58 -0500
6323
6324  updated "leapseconds" file
6325
6326
6327Release 93 - 1993-01-08 07:01:06 -0500
6328
6329  At kre's suggestion, the package has been split in two - a code piece
6330  (which also includes documentation) that's only of use to folks who
6331  want to recompile things and a data piece useful to anyone who can
6332  run "zic".
6333
6334  The new version has a few changes to the data files, a few
6335  portability changes, and an off-by-one fix (with thanks to
6336  Tom Karzes at deshaw.com for providing a description and a
6337  solution).
6338
6339
6340Release 92c - 1992-11-21 17:35:36 -0000
6341  [tz92c.tar.Z is missing!]
6342
6343  The fallout from the latest round of DST transitions.
6344
6345  There are changes for Portugal, Saskatchewan, and "Pacific-New";
6346  there's also a change to "zic.c" that makes it portable to more systems.
6347
6348
6349Release 92 - 1992-04-25 18:17:03 -0000
6350  [tz92.tar.Z is missing!]
6351
6352  By popular demand (well, at any rate, following a request by kre at munnari)
6353
6354
6355The 1989 update of the time zone package featured:
6356
6357  *	POSIXization (including interpretation of POSIX-style TZ environment
6358	variables, provided by Guy Harris),
6359  *	ANSIfication (including versions of "mktime" and "difftime"),
6360  *	SVIDulation (an "altzone" variable)
6361  *	MACHination (the "gtime" function)
6362  *	corrections to some time zone data (including corrections to the rules
6363	for Great Britain and New Zealand)
6364  *	reference data from the United States Naval Observatory for folks who
6365	want to do additional time zones
6366  *	and the 1989 data for Saudi Arabia.
6367
6368  (Since this code will be treated as "part of the implementation" in some
6369  places and as "part of the application" in others, there's no good way to
6370  name functions, such as timegm, that are not part of the proposed ANSI C
6371  standard; such functions have kept their old, underscore-free names in this
6372  update.)
6373
6374  And the "dysize" function has disappeared; it was present to allow
6375  compilation of the "date" command on old BSD systems, and a version of "date"
6376  is now provided in the package.  The "date" command is not created when you
6377  "make all" since it may lack options provided by the version distributed with
6378  your operating system, or may not interact with the system in the same way
6379  the native version does.
6380
6381  Since POSIX frowns on correct leap second handling, the default behavior of
6382  the "zic" command (in the absence of a "-L" option) has been changed to omit
6383  leap second information from its output files.
6384
6385
6386-----
6387Notes
6388
6389This file contains copies of the part of each release announcement
6390that talks about the changes in that release.  The text has been
6391adapted and reformatted for the purposes of this file.
6392
6393Traditionally a release R consists of a pair of tarball files,
6394tzcodeR.tar.gz and tzdataR.tar.gz.  However, some releases (e.g.,
6395code2010a, data2012c) consist of just one or the other tarball, and a
6396few (e.g., code2012c-data2012d) have tarballs with mixed version
6397numbers.  Recent releases also come in an experimental format
6398consisting of a single tarball tzdb-R.tar.lz with extra data.
6399
6400Release timestamps are taken from the release's commit (for newer,
6401Git-based releases), from the newest file in the tarball (for older
6402releases, where this info is available) or from the email announcing
6403the release (if all else fails; these are marked with a time zone
6404abbreviation of -0000 and an "is missing!" comment).
6405
6406Earlier versions of the code and data were not announced on the tz
6407list and are not summarized here.
6408
6409This file is in the public domain.
6410
6411Local Variables:
6412coding: utf-8
6413End:
6414