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