--- Begin Message ---
Subject: |
date +%+4C is unimplemented, contrary to POSIX |
Date: |
Thu, 21 Feb 2019 11:10:06 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 |
POSIX requires the '+' flag in %C to output padding with leading 0, and
additionally to add a +/- indicator if the minimum field width is larger
than 2 bytes. Thus:
date -d 0001-01-01 +.%+4C.
should produce ".+000.", but currently it produces ".%+4C." because the
+ flag is unimplemented.
See also http://austingroupbugs.net/view.php?id=1184
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#34608: date +%+4C is unimplemented, contrary to POSIX |
Date: |
Mon, 25 Feb 2019 00:27:47 -0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 |
Eric Blake wrote:
The best I can do is search austingroupbugs.net for all bugs containing
strftime, which pulls up a current total of 25 issues.
Thanks for doing that. I read through those issues, and the only one that seems
relevant (i.e., resolved by austingroup but not in Gnulib) is the business with
the + conversion specification flag. I installed this Gnulib patch to implement
the flag:
https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=188d87b05190690d6f8b0577ec65ef221a711d08
Then I installed the attached coreutils patches to propagate the Gnulib patch
into coreutils, and I am marking this coreutils bug as done.
glibc strftime should also support the + conversion specification flag. I filed
a bug report for that here:
https://sourceware.org/bugzilla/show_bug.cgi?id=24264
0001-build-update-gnulib-submodule-to-latest.patch
Description: Text Data
0002-date-conversion-specification-flag.patch
Description: Text Data
0003-doc-fix-typo-in-previous-patch.patch
Description: Text Data
--- End Message ---