GNU bug report logs -
#21904
date->string duff ISO 8601 format for non-4-digit years
Previous Next
Full log
View this message in rfc822 format
Zefram <zefram <at> fysh.org> writes:
> scheme@(guile-user)> (date->string (julian-day->date 1722000 0) "~1")
> $4 = "2-07-29"
> scheme@(guile-user)> (date->string (julian-day->date 1730000 0) "~1")
> $5 = "24-06-23"
> scheme@(guile-user)> (date->string (julian-day->date 2000000 0) "~1")
> $6 = "763-09-18"
This particular subset of bugs, for years 0-9999, was fixed in the
upstream SRFI-19 reference implementation, and so I included the same
fix in commit 5106377a3460e1e35daf14ea6edbe80426347155. That fix pads
the year to have at least 4 characters with the requested padding
character (0 by default). However, it does not handle adding the sign
where mandated by ISO 8601.
As with your related bug <https://bugs.gnu.org/21903>, I think this bug
should be reported to upstream SRFI-19, and hopefully they will take it
seriously. I'm reluctant to have Guile deviate from most (all?) other
SRFI-19 implementations in this respect.
There's also the issue that 'string->date' would need to be fixed to
successfully parse the years as printed by 'date->string'.
Would you like to report these issues to upstream SRFI-19?
Regards,
Mark
This bug report was last modified 6 years and 238 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.