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