* NEWS: Document this.
* africa (Egypt): Change from "Apr lastFri 0:00s" to "Apr lastThu
24:00" for 2015-2019 and 2023 on. (Thanks to Steffen Thorsen.)
If I recall correctly, the trailing "s" was needed to work around
a Ramadan glitch that no longer seems to happen with the new rule,
so omit it in the new version.
When recently changing the 'Chile' ruleset in 'southamerica', I
forgot to update its copy 'ChileAQ' in 'antarctica'. This sort of
thing has been a continuing problem over the years. Attempt to
make further recurrences less likely by moving 'Antarctica/Palmer'
from 'antarctica' to 'southamerica', so that there's no need to
copy the rules in question.
* antarctica (ArgAQ, ChileAQ): Remove.
(Antarctica/Palmer): Move to ...
* southamerica: ... this file, and use plain 'Arg' and 'Chile'.
* NEWS: Mention Antarctica/Palmer and the other affected zones.
(Thanks to Alois Treindl for reporting the problem.)
* southamerica (Chile, America/Santiago, Pacific/Easter):
Fix several problems in the Chilean data from 1890 through 1990.
* NEWS: Document this.
* NEWS: Document this.
* backzone (Mont, America/Montreal):
Move this out-of-scope data here from 'northamerica'.
* checktab.awk: Remove special case for America/Montreal,
that was added to this file "temporarily" on 2013-09-11.
* northamerica (America/Montreal): Now a link to America/Toronto.
* Makefile (GCC_DEBUG_FLAGS): Assume GCC 4.9.2 and current tz sources.
Add -Wdate-time, -Wdouble-promotion, -Wlogical-op,
-Wold-style-definition, -Wunused. Remove redundant -Wcast-qual
and -Wno-cast-qual. Remove -Wmissing-declarations; implied by
-Wmissing-prototypes. Remove -Wmissing-noreturn; equivalent to
-Wsuggest-attribute=noreturn. Remove -Wno-sign-conversion; not
needed, as we don't use -Wconversion. Put the -Wno-* options
last, so that they override preceding options that enable warnings.
Allow libraries built with -Dtime_tz=... to be used in executables
that also use standard-library time_t and libraries.
(Problem reported by Bradley White.)
* NEWS: Document this.
* private.h (localtime_rz, mktime_rz, posix2time_z, time2posix_z)
(tzalloc, tzfree, tzset, tzsetwall) [time_tz]: Define to
tz_localtime_rz etc., so that these functions can be used in the
same executable as standard functions with standard time_t.
(tzset, tzsetwall) [time_tz]: Declare, so that the tz_-prefixed
version ins declared.
* asia (Mongol), NEWS: Mongolia will start observing DST again
this year, from the last Saturday in March at 02:00 to the last
Saturday in September at 00:00. (Thanks to Ganbold Tsagaankhuu.)
* asia (Palestine), NEWS: Palestine will start DST on March 28,
not March 27. Also, correct the fall 2014 transition from
September 26 to October 24. Adjust future predictions
accordingly. (Thanks to Steffen Thorsen.)
* NEWS: Document this.
* australasia (Pacific/Guam): Now a link to Pacific/Guam.
(Pacific/Midway): Now a link to Pacific/Pago_Pago.
* backzone (America/Antigua, America/Cayman, Pacific/Miday)
(Pacific/Saipan): Move these four entries here from the other files.
* checktab.awk: Remove special cases for the four zones.
* northamerica (America/Cayman): Now a link to America/Panama.
(America/Antigua): Move to ...
* southamerica (America/Antigua): ... here, and make it a link to
America/Port_of_Spain.
* leap-seconds.list: New version 3629404800 from NIST,
fixing a commentary typo and removing trailing white space.
* Makefile (check_white_space): Remove special case for
leap-second.list.
* Makefile (check_white_space): Allow trailing white space in
leap-seconds.list. This file is maintained by NIST, and the
current version has trailing white space, and has a checksum
making it inadvisable for us to remove the trailing white space in
our copy. Also, coalesce two 'grep' calls into one, and check for
weird white space characters anywhere, not just before line end.
* NEWS:
* antarctica (ChileAQ, Antarctica/Palmer):
* southamerica (Chile, America/Santiago, Pacific/Easter):
Chile will not change its clocks in April, or thereafter.
Consider this to be their new standard time, effective April.
(Thanks to Juan Correa.)
* NEWS: America/FCP_QRoo also affects current time stamps.
* northamerica: Reformat to fit in 80 characters.
* zone.tab, zone1970.tab: Use "city, state" style for consistency.
* northamerica (America/FCP_QRoo): New zone for portions of Quintana Roo
state in Mexico which have observed EST without DST since 1998.
* zone.tab, zone1970.tab: Add entries for it, update description of
America/Cancun to reflect that it no longer represents all of Quintana Roo.
* NEWS: Document this.
* northamerica (America/Cancun): Switch to EST without DST on
2015-02-01 at 02:00.
* zone.tab, zone1970.tab: Update description for America/Cancun.
* NEWS: Document this.
* leap-seconds.list: Per IERS Bulletin C49 (2015-01-05), a positive leap
second will be inserted into the UTC time scale at the end of
2015-06-30. Update file from NIST, retrieved from
<ftp://time.nist.gov/pub/leap-seconds.3629404800>.
* asia (Asia/Bahrain): Now links to Asia/Qatar.
(Asia/Kuwait, Asia/Aden): Now links to Asia/Riyadh.
(Asia/Muscat): Now links to Asia/Dubai.
* backzone: Move the old data here.
* checktab.awk (tztab): Remove special cases for these zones.
* NEWS: Document the above.
Explanation:
GNU awk fails when a user-defined-functions is called with a space like in
'myUDF ()'. It does not fail when calling builtin functions, but removed
those spaces too.
Example code:
good_awk='function echo(x) { return x; } BEGIN { print echo("x"); }'
bad_awk_='function echo(x) { return x; } BEGIN { print echo ("x"); }'
sin_awk='BEGIN { print sin (0) }'
mawk -W version 2>/dev/null | head -n1
mawk "${sin_awk}"
mawk "${good_awk}"
mawk "${bad_awk_}"
gawk -V | head -n1
gawk "${sin_awk}"
gawk "${good_awk}"
gawk "${bad_awk_}"
Output:
mawk 1.3.4 20141027
0
x
x
GNU Awk 4.0.2
0
x
gawk: cmd. line:1: error: function `echo' called with space between name
and `(',
* europe (Iceland, Atlantic/Reykjavik):
Correct entries for 1939, 1921, 1919, and 1837-1907.
Coalesce some other entries, for simplicity.
* NEWS: Document this.
When using gawk and Posix TZ in tzselect, this warning is shown:
awk: cmd. line:1: warning: escape sequence `\.' treated as plain `.'
gawk treats '\.' as '.'
mawk treats '\.' as '\.'
both treat '\\.' as '\\.'
The 2nd and 3rd are corrrect for 'Mm.w.d'.
Test:
gawk 'BEGIN{ date = "\."; print date }'
gawk 'BEGIN{ date = "\\."; print date }'
versus:
mawk 'BEGIN{ date = "\."; print date }'
mawk 'BEGIN{ date = "\\."; print date }'
* tzselect.ksh (date): Fix bug that broke POSIX TZ checking with gawk.
* NEWS: Document this.