11News for the tz database
22
3+ Release 2023a - 2023-03-22 12:39:33 -0700
4+
5+ Briefly:
6+ Egypt now uses DST again, from April through October.
7+ This year Morocco springs forward April 23, not April 30.
8+ Palestine delays the start of DST this year.
9+ Much of Greenland still uses DST from 2024 on.
10+ America/Yellowknife now links to America/Edmonton.
11+ tzselect can now use current time to help infer timezone.
12+ The code now defaults to C99 or later.
13+ Fix use of C23 attributes.
14+
15+ Changes to future timestamps
16+
17+ Starting in 2023, Egypt will observe DST from April's last Friday
18+ through October's last Thursday. (Thanks to Ahmad ElDardiry.)
19+ Assume the transition times are 00:00 and 24:00, respectively.
20+
21+ In 2023 Morocco's spring-forward transition after Ramadan
22+ will occur April 23, not April 30. (Thanks to Milamber.)
23+ Adjust predictions for future years accordingly. This affects
24+ predictions for 2023, 2031, 2038, and later years.
25+
26+ This year Palestine will delay its spring forward from
27+ March 25 to April 29 due to Ramadan. (Thanks to Heba Hamad.)
28+ Make guesses for future Ramadans too.
29+
30+ Much of Greenland, represented by America/Nuuk, will continue to
31+ observe DST using European Union rules. When combined with
32+ Greenland's decision not to change the clocks in fall 2023,
33+ America/Nuuk therefore changes from -03/-02 to -02/-01 effective
34+ 2023-10-29 at 01:00 UTC. (Thanks to Thomas M. Steenholdt.)
35+ This change from 2022g doesn't affect timestamps until 2024-03-30,
36+ and doesn't affect tm_isdst until 2023-03-25.
37+
38+ Changes to past timestamps
39+
40+ America/Yellowknife has changed from a Zone to a backward
41+ compatibility Link, as it no longer differs from America/Edmonton
42+ since 1970. (Thanks to Almaz Mingaleev.) This affects some
43+ pre-1948 timestamps. The old data are now in 'backzone'.
44+
45+ Changes to past time zone abbreviations
46+
47+ When observing Moscow time, Europe/Kirov and Europe/Volgograd now
48+ use the abbreviations MSK/MSD instead of numeric abbreviations,
49+ for consistency with other timezones observing Moscow time.
50+
51+ Changes to code
52+
53+ You can now tell tzselect local time, to simplify later choices.
54+ Select the 'time' option in its first prompt.
55+
56+ You can now compile with -DTZNAME_MAXIMUM=N to limit time zone
57+ abbreviations to N bytes (default 255). The reference runtime
58+ library now rejects POSIX-style TZ strings that contain longer
59+ abbreviations, treating them as UTC. Previously the limit was
60+ platform dependent and abbreviations were silently truncated to
61+ 16 bytes even when the limit was greater than 16.
62+
63+ The code by default is now designed for C99 or later. To build in
64+ a C89 environment, compile with -DPORT_TO_C89. To support C89
65+ callers of the tzcode library, compile with -DSUPPORT_C89. The
66+ two new macros are transitional aids planned to be removed in a
67+ future version, when C99 or later will be required.
68+
69+ The code now builds again on pre-C99 platforms, if you compile
70+ with -DPORT_TO_C89. This fixes a bug introduced in 2022f.
71+
72+ On C23-compatible platforms tzcode no longer uses syntax like
73+ 'static [[noreturn]] void usage(void);'. Instead, it uses
74+ '[[noreturn]] static void usage(void);' as strict C23 requires.
75+ (Problem reported by Houge Langley.)
76+
77+ The code's functions now constrain their arguments with the C
78+ 'restrict' keyword consistently with their documentation.
79+ This may allow future optimizations.
80+
81+ zdump again builds standalone with ckdadd and without setenv,
82+ fixing a bug introduced in 2022g. (Problem reported by panic.)
83+
84+ leapseconds.awk can now process a leap seconds file that never
85+ expires; this might be useful if leap seconds are discontinued.
86+
87+ Changes to commentary
88+
89+ tz-link.html has a new section "Coordinating with governments and
90+ distributors". (Thanks to Neil Fuller for some of the text.)
91+
92+ To improve tzselect diagnostics, zone1970.tab's comments column is
93+ now limited to countries that have multiple timezones.
94+
95+ Note that leap seconds are planned to be discontinued by 2035.
96+
97+
398Release 2022g - 2022-11-29 08:58:31 -0800
499
5100 Briefly:
@@ -596,7 +691,7 @@ Release 2021b - 2021-09-24 16:23:00 -0700
596691 Starting with 2020a, zic -L truncated its output according to the
597692 "Expires" directive or "#expires" comment in the leapseconds file.
598693 The resulting TZif files omitted daylight saving transitions after
599- the leap second table expired, which led to far less- accurate
694+ the leap second table expired, which led to far less accurate
600695 predictions of times after the expiry. Although future timestamps
601696 cannot be converted accurately in the presence of leap seconds, it
602697 is more accurate to convert near-future timestamps with a few
@@ -616,7 +711,7 @@ Release 2021b - 2021-09-24 16:23:00 -0700
616711 zic -L LEAPFILE -r @LO no longer generates an invalid TZif file
617712 that omits leap second information for the range LO..B when LO
618713 falls between two leap seconds A and B. Instead, it generates a
619- TZif version 4 file that represents the previously- missing
714+ TZif version 4 file that represents the previously missing
620715 information.
621716
622717 The TZif reader now allows the leap second table to begin with a
@@ -670,7 +765,7 @@ Release 2021b - 2021-09-24 16:23:00 -0700
670765 Fix a bug with 'zic -r @X' when X is a negative leap second that
671766 has a nonnegative correction. Without the fix, the output file
672767 was truncated so that X appeared to be a positive leap second.
673- Fix a similar, even- less- likely bug when truncating at a positive
768+ Fix a similar, even less likely bug when truncating at a positive
674769 leap second that has a nonpositive correction.
675770
676771 zic -r now reports an error if given rolling leap seconds, as this
@@ -691,7 +786,7 @@ Release 2021b - 2021-09-24 16:23:00 -0700
691786 fixing a bug introduced in 2014g.
692787
693788 zdump -v now outputs timestamps at boundaries of what localtime
694- and gmtime can represent, instead of the less- useful timestamps
789+ and gmtime can represent, instead of the less useful timestamps
695790 one day after the minimum and one day before the maximum.
696791 (Thanks to Arthur David Olson for prototype code, and to Manuela
697792 Friedrich for debugging help.)
@@ -2311,7 +2406,7 @@ Release 2016g - 2016-09-13 08:56:38 -0700
23112406 names internally.
23122407
23132408 zdump has a new -i option to generate transitions in a
2314- more-compact but still human-readable format. This option is
2409+ smaller but still human-readable format. This option is
23152410 experimental, and the output format may change in future versions.
23162411 (Thanks to Jon Skeet for suggesting that an option was needed,
23172412 and thanks to Tim Parenti and Chris Rovick for further comments.)
@@ -2333,7 +2428,7 @@ Release 2016g - 2016-09-13 08:56:38 -0700
23332428 release 2016g, the version number is now something like
23342429 '2016g-23-g50556e3-dirty' instead of the misleading '2016g'.
23352430 Tagged releases use the same version number format as before,
2336- e.g., '2016g'. To support the more- accurate version number, its
2431+ e.g., '2016g'. To support the more accurate version number, its
23372432 specification has moved from a line in the Makefile to a new
23382433 source file 'version'.
23392434
@@ -2964,7 +3059,7 @@ Release 2014i - 2014-10-21 22:04:57 -0700
29643059
29653060 Since Belarus is not changing its clocks even though Moscow is,
29663061 the time zone abbreviation in Europe/Minsk is changing from FET
2967- to its more- traditional value MSK on 2014-10-26 at 01:00.
3062+ to its more traditional value MSK on 2014-10-26 at 01:00.
29683063 (Thanks to Alexander Bokovoy for the heads-up about Belarus.)
29693064
29703065 The new abbreviation IDT stands for the pre-1976 use of UT +08 in
@@ -3056,7 +3151,7 @@ Release 2014h - 2014-09-25 18:59:03 -0700
30563151
30573152 Changes affecting build procedure
30583153
3059- 'make check' now checks better for properly- sorted data.
3154+ 'make check' now checks better for properly sorted data.
30603155
30613156 Changes affecting documentation and commentary
30623157
@@ -3557,7 +3652,7 @@ Release 2014a - 2014-03-07 23:30:29 -0800
35573652
35583653 Changes affecting past timestamps
35593654
3560- Fiji ended DST on 2014-01-19 at 02:00, not the previously- scheduled 03:00.
3655+ Fiji ended DST on 2014-01-19 at 02:00, not the previously scheduled 03:00.
35613656 (Thanks to Steffen Thorsen.)
35623657
35633658 Ukraine switched from Moscow to Eastern European time on 1990-07-01
@@ -3811,15 +3906,15 @@ Release 2013e - 2013-09-19 23:50:04 -0700
38113906 Allow POSIX-like TZ strings where the transition time's hour can
38123907 range from -167 through 167, instead of the POSIX-required 0
38133908 through 24. E.g., TZ='FJT-12FJST,M10.3.1/146,M1.3.4/75' for the
3814- new Fiji rules. This is a more- compact way to represent
3909+ new Fiji rules. This is a more compact way to represent
38153910 far-future timestamps for America/Godthab, America/Santiago,
38163911 Antarctica/Palmer, Asia/Gaza, Asia/Hebron, Asia/Jerusalem,
38173912 Pacific/Easter, and Pacific/Fiji. Other zones are unaffected by
38183913 this change. (Derived from a suggestion by Arthur David Olson.)
38193914
38203915 Allow POSIX-like TZ strings where daylight saving time is in
38213916 effect all year. E.g., TZ='WART4WARST,J1/0,J365/25' for Western
3822- Argentina Summer Time all year. This supports a more- compact way
3917+ Argentina Summer Time all year. This supports a more compact way
38233918 to represent the 2013d data for America/Argentina/San_Luis.
38243919 Because of the change for San Luis noted above this change does not
38253920 affect the current data. (Thanks to Andrew Main (Zefram) for
@@ -3908,13 +4003,13 @@ Release 2013e - 2013-09-19 23:50:04 -0700
39084003
39094004 zdump now outputs "UT" when referring to Universal Time, not "UTC".
39104005 "UTC" does not make sense for timestamps that predate the introduction
3911- of UTC, whereas "UT", a more- generic term, does. (Thanks to Steve Allen
4006+ of UTC, whereas "UT", a more generic term, does. (Thanks to Steve Allen
39124007 for clarifying UT vs UTC.)
39134008
39144009 Data changes affecting behavior of tzselect and similar programs
39154010
3916- Country code BQ is now called the more- common name "Caribbean Netherlands"
3917- rather than the more- official "Bonaire, St Eustatius & Saba".
4011+ Country code BQ is now called the more common name "Caribbean Netherlands"
4012+ rather than the more official "Bonaire, St Eustatius & Saba".
39184013
39194014 Remove from zone.tab the names America/Montreal, America/Shiprock,
39204015 and Antarctica/South_Pole, as they are equivalent to existing
@@ -4098,7 +4193,7 @@ Release 2013c - 2013-04-19 16:17:40 -0700
40984193 Macquarie Island is politically part of Australia, not Antarctica.
40994194 (Thanks to Tobias Conradi.)
41004195
4101- Sort Macquarie more- consistently with other parts of Australia.
4196+ Sort Macquarie more consistently with other parts of Australia.
41024197 (Thanks to Tim Parenti.)
41034198
41044199
@@ -5322,7 +5417,7 @@ Release data1998g - 1998-08-11 03:28:35 -0000
53225417Release data1998f - 1998-07-20 13:50:00 -0000
53235418 [tzdata1998f.tar.gz is missing!]
53245419
5325- Update the "leapseconds" file to include the newly- announced
5420+ Update the "leapseconds" file to include the newly announced
53265421 insertion at the end of 1998.
53275422
53285423
0 commit comments