-
Notifications
You must be signed in to change notification settings - Fork 547
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clarify which revision of ISO 8601 Chrono adheres to #543
Comments
I don't think chrono adheres all that strictly, more that it drew a lot of inspiration from ISO 8601. About the revisions ISO 8601:2019 contains this note (https://www.iso.org/obp/ui/en/#iso:std:iso:8601:-1:ed-1:v1:en):
So mostly changes to terminology. "disallowing the value “24” for hour;" is interesting. Chrono never supported that. Yet for an ISO 8601 parser in #1143 I think it makes sense to support both the newer and older standard. I.e. to support the value 24 for hours to main midnight at the end of the day. |
Just for reference, strict ISO 8601 adherence was the first feature chrono stated in its README file when I filed this issue. It has been removed from the README since then. Line 22 in 8bd13db
|
I understand. That claim has been there since pretty much the first release of chrono. At the time it was written the revision was 2014. But you opened a good issue. If we promise to strictly follow a standard, it should also correctly reference the standard including revision. For my work every rapport and all the software starts with a list of the relevant building codes, which have to be specified including revision, amendments, corrections and national annexes. I just don't know yet how much chrono should advertise the ISO 8601 support in the main documentation. Maybe it should not be more than a section that documents the relevant parsing and formatting methods, as ISO 8601 is mostly for interchange and does not specify how to do calculations on date and time values. |
@xTibor Do you have experience with this? Does it sometimes come up in a list of requirements like "the software must support ISO 8601:2019", and libraries must be picked to match? I hope you understand what I mean to say... |
The README states Chrono strictly adheres to ISO 8601. I think this statement is slightly ambiguous, there are multiple revisions of the standard with minor differences. Would be nice to know which one Chrono actually follows. (2004?, 2019?)
The text was updated successfully, but these errors were encountered: