Opened 6 years ago

Closed 6 years ago

#403 closed defect (fixed)

Normalize encode/decode-universal-time and DST to "time of the time" semantics

Reported by: Mark Evenson Owned by: Mark Evenson
Priority: minor Milestone: 1.4.0
Component: interpreter Version:
Keywords: Cc:
Parent Tickets:

Description

Scott Burson reports in <http://article.gmane.org/gmane.lisp.armedbear.devel/3537>

As daylight-saving time ended in the US today, I discovered that ABCL's
interpretation of the CL spec concerning the behavior of
'encode/decode-universal-time' around DST is not the usual one.

The usual interpretation is that when an explicit timezone is not supplied
to these calls, DST is selected automatically based on whether it would
have been in force (under certain assumptions, e.g., you're not in Arizona)
at the time being converted.  ABCL's behavior is to convert the time based
on whether DST is in force at the time of the call.

I think it's pretty clear that the former interpretation was the intended
one, even if the language of the spec is admittedly not as clear as it
should have been.  SBCL does it that way, CCL does it that way, and I even
dug out the Genera 7.2 sources, which I still have lying around, to confirm
that it did it that way too.

Relevant code is in <http://abcl.org/trac/browser/trunk/abcl/src/org/armedbear/lisp/time.lisp>

Change History (3)

comment:1 Changed 6 years ago by Mark Evenson

Proposal is to use [local-time][0] in contrib if licensing is compatible.

[0]: https://common-lisp.net/project/local-time/

comment:2 Changed 6 years ago by Mark Evenson

Owner: set to Mark Evenson
Status: newassigned

comment:3 Changed 6 years ago by Mark Evenson

Resolution: fixed
Status: assignedclosed

Scott provided an implementation was has been committed as http://abcl.org/trac/changeset/14840

Note: See TracTickets for help on using tickets.