[Zope3-dev] Re: [Python-Dev] Holes in time

Aahz aahz@pythoncraft.com
Thu, 2 Jan 2003 13:07:29 -0500


On Wed, Jan 01, 2003, Tim Peters wrote:
> [Aahz]
>>
>> What exactly do you mean by "wall time"?  Is it supposed to be a
>> timezone-less value?
> 
> The diagram in the original gave agonizingly detailed answers to these
> questions.  US Eastern as a tzinfo class tries to combine both EDT and
> EST; please read the original msg again, and note that the two "wall
> time" lines in the diagram show what US Eastern displays at all the
> relevant UTC times.

Ah!  Okay, didn't read the code and didn't realize that "US Eastern" was
a concrete representation.

>> Every other datetime package seems to live with the wiggle involved
>> in round-trip conversions, why not Python?
>
> Round-trip conversions aren't at issue here, except to the extent
> that the "unspellable hour" at the end of DST makes some one-way
> conversions impossible.

I'm not sure I agree.  As I see it, "wall time" is for users.  On the
display side, I believe that users *expect* to see

1:59:57 am
1:59:58 am
1:59:59 am
1:00:00 am
1:00:01 am

I therefore see no problem with the UTC->wall clock conversion.  Going
the other direction requires an explicit statement of which timezone
you're in at the point of conversion (a real timezone, not a virtual one
like "US Eastern").  Presumably that only occurs as a result of user
input, and when you redisplay the input as a wall clock, it should be
obvious to the user if the wrong time zone was selected because the time
will be an hour (or whatever) off.  The only way this is a problem seems
to be if you want to do round-trip conversions purely programmatically.
-- 
Aahz (aahz@pythoncraft.com)           <*>         http://www.pythoncraft.com/

"There are three kinds of lies: Lies, Damn Lies, and Statistics."  --Disraeli