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