Module Name: src Committed By: christos Date: Wed Jul 3 15:50:16 UTC 2019
Modified Files: src/lib/libc/time: Makefile NEWS localtime.c theory.html tz-art.html tz-how-to.html tz-link.html tzfile.5 tzset.3 version zic.8 zic.c Log Message: Sync with 2019b: zic's new -b option supports a way to control data bloat and to test for year-2038 bugs in software that reads TZif files. 'zic -b fat' and 'zic -b slim' generate larger and smaller output; for example, changing from fat to slim shrinks the Europe/London file from 3648 to 1599 bytes, saving about 56%. Fat and slim files represent the same set of timestamps and use the same TZif format as documented in tzfile(5) and in Internet RFC 8536. Fat format attempts to work around bugs or incompatibilities in older software, notably software that mishandles 64-bit TZif data or uses obsolete TZ strings like "EET-2EEST" that lack DST rules. Slim format is more efficient and does not work around 64-bit bugs or obsolete TZ strings. Currently zic defaults to fat format unless you compile with -DZIC_BLOAT_DEFAULT=\"slim\"; this out-of-the-box default is intended to change in future releases as the buggy software often mishandles timestamps anyway. zic no longer treats a set of rules ending in 2037 specially. Previously, zic assumed that such a ruleset meant that future timestamps could not be predicted, and therefore omitted a POSIX-like TZ string in the TZif output. The old behavior is no longer needed for current tzdata, and caused problems with newlib when used with older tzdata (reported by David Gauchard). zic no longer generates some artifact transitions. For example, Europe/London no longer has a no-op transition in January 1996. To generate a diff of this commit: cvs rdiff -u -r1.43 -r1.44 src/lib/libc/time/Makefile cvs rdiff -u -r1.28 -r1.29 src/lib/libc/time/NEWS src/lib/libc/time/tzfile.5 cvs rdiff -u -r1.121 -r1.122 src/lib/libc/time/localtime.c cvs rdiff -u -r1.7 -r1.8 src/lib/libc/time/theory.html cvs rdiff -u -r1.4 -r1.5 src/lib/libc/time/tz-art.html cvs rdiff -u -r1.6 -r1.7 src/lib/libc/time/tz-how-to.html cvs rdiff -u -r1.5 -r1.6 src/lib/libc/time/tz-link.html cvs rdiff -u -r1.41 -r1.42 src/lib/libc/time/tzset.3 cvs rdiff -u -r1.11 -r1.12 src/lib/libc/time/version cvs rdiff -u -r1.32 -r1.33 src/lib/libc/time/zic.8 cvs rdiff -u -r1.74 -r1.75 src/lib/libc/time/zic.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.