[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#799476: libc6: strftime should allow extended-format timezone (ISO 8601)



Package: libc6
Severity: wishlist

For a date in ISO 8601 extended format with "Difference between local
time and UTC of day" (§4.2.5.1), the timezone can be written only as
±hh:mm or ±hh.

§4.3.3d says (http://dotat.at/tmp/ISO_8601-2004_E.pdf#):
"the expression shall either be completely in basic format, in which
case the minimum number of separators necessary for the required
expression is used, or completely in extended format, in which case
additional separators shall be used in accordance with 4.1 and 4.2."

strftime should be able to output the timezone with a colon so a
compliant date could be produced without post-processing, and so a
locale could default to an ISO 8601 date and time format (other than
basic format).  Perhaps a new flag could be used, e.g. "%:z".

A way to output ±hh if mm==00, or ±hh:mm otherwise, may be useful too.
Maybe "%3z" or "%:3z" ("unspecified" per SUSv4: "a minimum field width
is specified for any conversion specifier other than C, F, G, or Y").

- Michael


-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: arm64

Kernel: Linux 4.1.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)

Attachment: signature.asc
Description: Digital signature


Reply to: