NEWS (9fbeeb6e38310b4f42a14c4b043bbee82c5e4752) NEWS (eebb9c2caea1584773ae4cec311cee1eea5b1655)
1News for the tz database
2
1News for the tz database
2
3Release 2023d - 2023-12-21 20:02:24 -0800
4
5 Briefly:
6 Ittoqqortoormiit, Greenland changes time zones on 2024-03-31.
7 Vostok, Antarctica changed time zones on 2023-12-18.
8 Casey, Antarctica changed time zones five times since 2020.
9 Code and data fixes for Palestine timestamps starting in 2072.
10 A new data file zonenow.tab for timestamps starting now.
11
12 Changes to future timestamps
13
14 Ittoqqortoormiit, Greenland (America/Scoresbysund) joins most of
15 the rest of Greenland's timekeeping practice on 2024-03-31, by
16 changing its time zone from -01/+00 to -02/-01 at the same moment
17 as the spring-forward transition. Its clocks will therefore not
18 spring forward as previously scheduled. The time zone change
19 reverts to its common practice before 1981.
20
21 Fix predictions for DST transitions in Palestine in 2072-2075,
22 correcting a typo introduced in 2023a.
23
24 Changes to past and future timestamps
25
26 Vostok, Antarctica changed to +05 on 2023-12-18. It had been at
27 +07 (not +06) for years. (Thanks to Zakhary V. Akulov.)
28
29 Change data for Casey, Antarctica to agree with timeanddate.com,
30 by adding five time zone changes since 2020. Casey is now at +08
31 instead of +11.
32
33 Changes to past tm_isdst flags
34
35 Much of Greenland, represented by America/Nuuk, changed its
36 standard time from -03 to -02 on 2023-03-25, not on 2023-10-28.
37 This does not affect UTC offsets, only the tm_isdst flag.
38 (Thanks to Thomas M. Steenholdt.)
39
40 New data file
41
42 A new data file zonenow.tab helps configure applications that use
43 timestamps dated from now on. This simplifies configuration,
44 since users choose from a smaller Zone set. The file's format is
45 experimental and subject to change.
46
47 Changes to code
48
49 localtime.c no longer mishandles TZif files that contain a single
50 transition into a DST regime. Previously, it incorrectly assumed
51 DST was in effect before the transition too. (Thanks to Alois
52 Treindl for debugging help.)
53
54 localtime.c's timeoff no longer collides with OpenBSD 7.4.
55
56 The C code now uses _Generic only if __STDC_VERSION__ says the
57 compiler is C11 or later.
58
59 tzselect now optionally reads zonenow.tab, to simplify when
60 configuring only for timestamps dated from now on.
61
62 tzselect no longer creates temporary files.
63
64 tzselect no longer mishandles the following:
65
66 Spaces and most other special characters in BUGEMAIL, PACKAGE,
67 TZDIR, and VERSION.
68
69 TZ strings when using mawk 1.4.3, which mishandles regular
70 expressions of the form /X{2,}/.
71
72 ISO 6709 coordinates when using an awk that lacks the GNU
73 extension of newlines in -v option-arguments.
74
75 Non UTF-8 locales when using an iconv command that lacks the GNU
76 //TRANSLIT extension.
77
78 zic no longer mishandles data for Palestine after the year 2075.
79 Previously, it incorrectly omitted post-2075 transitions that are
80 predicted for just before and just after Ramadan. (Thanks to Ken
81 Murchison for debugging help.)
82
83 zic now works again on Linux 2.6.16 and 2.6.17 (2006).
84 (Problem reported by Rune Torgersen.)
85
86 Changes to build procedure
87
88 The Makefile is now more compatible with POSIX:
89 * It no longer defines AR, CC, CFLAGS, LDFLAGS, and SHELL.
90 * It no longer uses its own 'cc' in place of CC.
91 * It now uses ARFLAGS, with default specified by POSIX.
92 * It does not use LFLAGS incompatibly with POSIX.
93 * It uses the special .POSIX target.
94 * It quotes special characters more carefully.
95 * It no longer mishandles builds in an ISO 8859 locale.
96 Due to the CC changes, TZDIR is now #defined in a file tzfile.h
97 built by 'make', not in a $(CC) -D option. Also, TZDEFAULT is
98 now treated like TZDIR as they have similar roles.
99
100 Changes to commentary
101
102 Limitations and hazards of the optional support for obsolescent
103 C89 platforms are documented better, along with a tentative
104 schedule for removing this support.
105
106
3Release 2023c - 2023-03-28 12:42:14 -0700
4
5 Changes to past and future timestamps
6
7 Model Lebanon's DST chaos by reverting data to tzdb 2023a.
8 (Thanks to Rany Hany for the heads-up.)
9
10

--- 60 unchanged lines hidden (view full) ---

71
72 You can now compile with -DTZNAME_MAXIMUM=N to limit time zone
73 abbreviations to N bytes (default 255). The reference runtime
74 library now rejects POSIX-style TZ strings that contain longer
75 abbreviations, treating them as UTC. Previously the limit was
76 platform dependent and abbreviations were silently truncated to
77 16 bytes even when the limit was greater than 16.
78
107Release 2023c - 2023-03-28 12:42:14 -0700
108
109 Changes to past and future timestamps
110
111 Model Lebanon's DST chaos by reverting data to tzdb 2023a.
112 (Thanks to Rany Hany for the heads-up.)
113
114

--- 60 unchanged lines hidden (view full) ---

175
176 You can now compile with -DTZNAME_MAXIMUM=N to limit time zone
177 abbreviations to N bytes (default 255). The reference runtime
178 library now rejects POSIX-style TZ strings that contain longer
179 abbreviations, treating them as UTC. Previously the limit was
180 platform dependent and abbreviations were silently truncated to
181 16 bytes even when the limit was greater than 16.
182
79 The code by default is now designed for C99 or later. To build in
80 a C89 environment, compile with -DPORT_TO_C89. To support C89
81 callers of the tzcode library, compile with -DSUPPORT_C89. The
82 two new macros are transitional aids planned to be removed in a
83 future version, when C99 or later will be required.
183 The code by default is now designed for C99 or later. To build on
184 a mostly-C89 platform, compile with -DPORT_TO_C89; this should
185 work on C89 platforms that also support C99 'long long' and
186 perhaps a few other extensions to C89. To support C89 callers of
187 tzcode's library, compile with -DSUPPORT_C89; however, this could
188 trigger latent bugs in C99-or-later callers. The two new macros
189 are transitional aids planned to be removed in a future version
190 (say, in 2029), when C99 or later will be required.
84
85 The code now builds again on pre-C99 platforms, if you compile
86 with -DPORT_TO_C89. This fixes a bug introduced in 2022f.
87
88 On C23-compatible platforms tzcode no longer uses syntax like
89 'static [[noreturn]] void usage(void);'. Instead, it uses
90 '[[noreturn]] static void usage(void);' as strict C23 requires.
91 (Problem reported by Houge Langley.)

--- 626 unchanged lines hidden (view full) ---

718 outputs the expiration by appending a no-change entry to the leap
719 second table. Although this should work well with most TZif
720 readers, it does not conform to Internet RFC 8536 and some pickier
721 clients (including tzdb 2017c through 2021a) reject it, so
722 "Expires" directives are currently disabled by default. To enable
723 them, set the EXPIRES_LINE Makefile variable. If a TZif file uses
724 this new feature it is marked with a new TZif version number 4,
725 a format intended to be documented in a successor to RFC 8536.
191
192 The code now builds again on pre-C99 platforms, if you compile
193 with -DPORT_TO_C89. This fixes a bug introduced in 2022f.
194
195 On C23-compatible platforms tzcode no longer uses syntax like
196 'static [[noreturn]] void usage(void);'. Instead, it uses
197 '[[noreturn]] static void usage(void);' as strict C23 requires.
198 (Problem reported by Houge Langley.)

--- 626 unchanged lines hidden (view full) ---

825 outputs the expiration by appending a no-change entry to the leap
826 second table. Although this should work well with most TZif
827 readers, it does not conform to Internet RFC 8536 and some pickier
828 clients (including tzdb 2017c through 2021a) reject it, so
829 "Expires" directives are currently disabled by default. To enable
830 them, set the EXPIRES_LINE Makefile variable. If a TZif file uses
831 this new feature it is marked with a new TZif version number 4,
832 a format intended to be documented in a successor to RFC 8536.
833 The old-format "#expires" comments are now treated solely as
834 comments and have no effect on the TZif files.
726
727 zic -L LEAPFILE -r @LO no longer generates an invalid TZif file
728 that omits leap second information for the range LO..B when LO
729 falls between two leap seconds A and B. Instead, it generates a
730 TZif version 4 file that represents the previously missing
731 information.
732
733 The TZif reader now allows the leap second table to begin with a

--- 3563 unchanged lines hidden (view full) ---

4297 The output of 'zdump --version', and of 'zic --version', now
4298 uses a format that is more typical for --version.
4299 (Thanks to Joseph S. Myers.)
4300
4301 The output of 'tzselect --help', 'zdump --help', and 'zic --help'
4302 now uses tz@iana.org rather than the old elsie address.
4303
4304 zic -v now complains about abbreviations that are less than 3
835
836 zic -L LEAPFILE -r @LO no longer generates an invalid TZif file
837 that omits leap second information for the range LO..B when LO
838 falls between two leap seconds A and B. Instead, it generates a
839 TZif version 4 file that represents the previously missing
840 information.
841
842 The TZif reader now allows the leap second table to begin with a

--- 3563 unchanged lines hidden (view full) ---

4406 The output of 'zdump --version', and of 'zic --version', now
4407 uses a format that is more typical for --version.
4408 (Thanks to Joseph S. Myers.)
4409
4410 The output of 'tzselect --help', 'zdump --help', and 'zic --help'
4411 now uses tz@iana.org rather than the old elsie address.
4412
4413 zic -v now complains about abbreviations that are less than 3
4305 or more than 6 characters, as per Posix. Formerly, it checked
4414 or more than 6 characters, as per POSIX. Formerly, it checked
4306 for abbreviations that were more than 3.
4307
4308 'make public' no longer puts its temporary directory under /tmp,
4309 and uses the just-built zic rather than the system zic.
4310
4311 Various fixes to documentation and commentary.
4312
4313

--- 148 unchanged lines hidden (view full) ---

4462 change not happened - that's the "missing" sccs version id).
4463
4464
4465Release data2011m - 2011-10-24 21:42:16 +0700
4466
4467 In particular, the typos in comments in the data (2011-11-17 should have
4468 been 2011-10-17 as Alan Barrett noted, and spelling of Tiraspol that
4469 Tim Parenti noted) have been fixed, and the change for Ukraine has been
4415 for abbreviations that were more than 3.
4416
4417 'make public' no longer puts its temporary directory under /tmp,
4418 and uses the just-built zic rather than the system zic.
4419
4420 Various fixes to documentation and commentary.
4421
4422

--- 148 unchanged lines hidden (view full) ---

4571 change not happened - that's the "missing" sccs version id).
4572
4573
4574Release data2011m - 2011-10-24 21:42:16 +0700
4575
4576 In particular, the typos in comments in the data (2011-11-17 should have
4577 been 2011-10-17 as Alan Barrett noted, and spelling of Tiraspol that
4578 Tim Parenti noted) have been fixed, and the change for Ukraine has been
4470 made in all 4 Ukrainian zones, rather than just Kiev (again, thanks to
4471 Tim Parenti, and also Denys Gavrysh)
4579 made in all 4 Ukrainian zones, rather than just Europe/Kiev
4580 (again, thanks to Tim Parenti, and also Denys Gavrysh).
4472
4473 In addition, I added Europe/Tiraspol to zone.tab.
4474
4475 This time, all the files have new version numbers... (including the files
4476 otherwise unchanged in 2011m that were changed in 2011l but didn't get new
4477 version numbers there...)
4478
4479

--- 1534 unchanged lines hidden ---
4581
4582 In addition, I added Europe/Tiraspol to zone.tab.
4583
4584 This time, all the files have new version numbers... (including the files
4585 otherwise unchanged in 2011m that were changed in 2011l but didn't get new
4586 version numbers there...)
4587
4588

--- 1534 unchanged lines hidden ---