diff options
Diffstat (limited to 'zic.8')
-rw-r--r-- | zic.8 | 45 |
1 files changed, 26 insertions, 19 deletions
@@ -31,7 +31,8 @@ zic \- timezone compiler The .B zic program reads text from the file(s) named on the command line -and creates the time conversion information files specified in this input. +and creates the timezone information format (TZif) files +specified in this input. If a .I filename is @@ -213,6 +214,15 @@ code designed for older output formats. These compatibility issues affect only timestamps before 1970 or after the start of 2038. .PP +The output contains a truncated leap second table, +which can cause some older TZif readers to misbehave. +This can occur if the +.B "\*-L" +option is used, and either an Expires line is present or +the +.B "\*-r" +option is also used. +.PP The output file contains more than 1200 transitions, which may be mishandled by some clients. The current reference client supports at most 2000 transitions; @@ -242,7 +252,7 @@ zero or more lines, each ending in a newline byte and containing at most 511 bytes, and without any NUL bytes. The input text's encoding is typically UTF-8 or ASCII; it should have a unibyte representation for the POSIX Portable Character Set (PPCS) -\*<http://pubs\*:.opengroup\*:.org/\*:onlinepubs/\*:9699919799/\*:basedefs/\*:V1_chap06\*:.html\*> +\*<https://pubs\*:.opengroup\*:.org/\*:onlinepubs/\*:9699919799/\*:basedefs/\*:V1_chap06\*:.html\*> and the encoding's non-unibyte characters should consist entirely of non-PPCS bytes. Non-PPCS characters typically occur only in comments: although output file names and time zone abbreviations can contain @@ -540,7 +550,7 @@ using the shortest form that does not lose information, where .IR mm , and .I ss -are the hours, minutes, and seconds east (+) or west (\(mi) of UT. +are the hours, minutes, and seconds east (+) or west (\-) of UT. Alternatively, a slash (/) separates standard and daylight abbreviations. @@ -700,6 +710,19 @@ or if the leap second time given by the other fields should be interpreted as local (wall clock) time. .PP +Rolling leap seconds were implemented back when it was not +clear whether common practice was rolling or stationary, +with concerns that one would see +Times Square ball drops where there'd be a +.q "3... 2... 1... leap... Happy New Year" +countdown, placing the leap second at +midnight New York time rather than midnight UTC. +However, this countdown style does not seem to have caught on, +which means rolling leap seconds are not used in practice; +also, they are not supported if the +.B \*-r +option is used. +.PP The expiration line, if present, has the form: .nf .ti +.5i @@ -720,22 +743,6 @@ The and .B HH:MM:SS fields give the expiration timestamp in UTC for the leap second table; -.B zic -outputs this expiration timestamp by truncating the end of the output -file to the timestamp. -If there is no expiration line, -.B zic -also accepts a comment -.q "#expires \fIE\fP ...\&" -where -.I E -is the expiration timestamp as a decimal integer count of seconds -since the Epoch, not counting leap seconds. -However, the -.q "#expires" -comment is an obsolescent feature, -and the leap second file should use an expiration line -instead of relying on a comment. .SH "EXTENDED EXAMPLE" Here is an extended example of .B zic |