Possible DateTime timezone-related regression in Zope 2.12

Martin Aspeli <[email protected]>
Newsgroups gmane.comp.web.zope.devel
Message-ID <[email protected]>
Hi,

We have a failing test in plone.app.dexterity 1.0a7. This is simply 
trying to compare two dates:

     >>> from DateTime import DateTime
     >>> DateTime() > DateTime(md.CreationDate())
     True

At least here in Australia, the second test fails. Right now, the 
following expressions are:

     DateTime(): DateTime('2010/01/10 11:20:24.718203 GMT+8')
     md.CreationDate(): '2010-01-10 11:19:57'
     DateTime(md.CreationDate()): DateTime('2010/01/10 11:19:57 GMT+0')

On Zope 2.10, it's a different story:

    DateTime(): DateTime('2010/01/10 11:34:01.508 GMT+8')
    md.CreationDate(): '2010-01-10 11:24:42'
    DateTime(md.CreationDate()): DateTime('2010/01/10 11:24:42 GMT+8')

Andi Zeidler looked into it briefly, and said the following:

imho, this is due a bug in `DateTime` 2.12.0.  the newer version behaves 
differently when it's initialized via a string representation of a date 
— it interprets the given date to be GMT while before it was taken to be 
from your local time zone:

  $ cd ~/plone/coredev/branches
  $ cat foo.py
  from DateTime import DateTime
  print DateTime('2010-01-09 00:34:37')
  $ 3.3/bin/zopepy foo.py
  2010/01/09 00:34:37 GMT+1
  $ 4.0/bin/zopepy foo.py
  2010/01/09 00:34:37 GMT+0

so in your test, `DateTime(md.CreationDate())` will always be the 
current time, but with an implicitly added 'GMT+0' while `DateTime()` 
will be the current time in your local time zone.  so if i'm not 
mistaken, on plone 4.0 the test with fail for you an me (in 'GMT+x' time 
zones) and pass in the u.s.  fun! :)

Does anyone know if this change was deliberate, or what may have happened?

Martin

-- 
Author of `Professional Plone Development`, a book for developers who
want to work with Plone. See http://martinaspeli.net/plone-book

_______________________________________________
Zope-Dev maillist  -  [email protected]
https://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope )
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.