[tz] make rearguard_tarballs fails on macOS
Paul Eggert
eggert at cs.ucla.edu
Sat Oct 17 18:19:10 UTC 2020
On 10/17/20 1:46 AM, Robert Elz wrote:
> touch -md 2020-10-12T22:53:00Z file
> touch: Could not parse `2020-10-12T22:53:00Z'
>
> With the 'T' in there, it is no longer a "human" format, but a
> standard one, and isn't recognised - I guess I could look at fixing
> parsedate(3) to handle that, but I'm not sure it is really warranted,
> parsedate() is a horrible ugly chunk of barely fuinctional code, and
> your updated patch will work fine.
We went through *exactly* the same thought process in the Gnulib parse-datetime
function, which is also a mess (perhaps even worse than NetBSD parsedate :-).
However, in 2011 the POSIX requirement eventually got us to parse the form with
the "T" in it, even though it's ugly and unreadable. I'm glad J.T. Conklin wrote
the patch:
https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=c2ecbc9a8262595b27f741e41375d06213a30fb6
so that I didn't have to.
By the way, the "human" format is specified in RFC 3339 section 5.6:
https://tools.ietf.org/html/rfc3339#section-5.6
which allows a space. This was at my insistence. That "T" is bad for human
readability, and readability is important, and if I had been part of the POSIX
deliberations I would have insisted that it also allow " " instead of "T".
GNU 'date' supports the "human" format as an extension to POSIX, and I assume
NetBSD 'date' will continue to do so too.
More information about the tz
mailing list