[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#22033: time-utc format is lossy
From: |
Zefram |
Subject: |
bug#22033: time-utc format is lossy |
Date: |
Fri, 27 Nov 2015 19:38:25 +0000 |
In SRFI-19, round-tripping some UTC dates through the time-utc structure
format, for the couple of seconds around a leap second:
scheme@(guile-user)> (use-modules (srfi srfi-19))
scheme@(guile-user)> (define (tdate d) (write (list (date->string d "~4")
(date->string (time-utc->date (date->time-utc d) 0) "~4"))) (newline))
scheme@(guile-user)> (tdate (make-date 0 59 59 23 30 6 2012 0))
("2012-06-30T23:59:59Z" "2012-06-30T23:59:59Z")
scheme@(guile-user)> (tdate (make-date 0 60 59 23 30 6 2012 0))
("2012-06-30T23:59:60Z" "2012-06-30T23:59:60Z")
scheme@(guile-user)> (tdate (make-date 0 0 0 0 1 7 2012 0))
("2012-07-01T00:00:00Z" "2012-06-30T23:59:60Z")
scheme@(guile-user)> (tdate (make-date 0 1 0 0 1 7 2012 0))
("2012-07-01T00:00:01Z" "2012-07-01T00:00:01Z")
Observe that the second immediately following the leap second, the
first second of the following UTC day, isn't round-tripped correctly.
It comes back as the leap second. These two seconds are perfectly
distinct parts of the UTC time scale, and the time-utc format ought to
preserve their distinction.
-zefram
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- bug#22033: time-utc format is lossy,
Zefram <=