Issue 1520914: time.strftime breakage in 2.4/2.5 (original) (raw)

Up to Python 2.3 this worked just fine:

>>> import time
>>> time.strftime("%Y-%m-%d", (2005, 6, 4) + (0,)*6)
'2005-06-04'

Starting with 2.4 it broke:

>>> import time
>>> time.strftime("%Y-%m-%d", (2005, 6, 4) + (0,)*6)
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
ValueError: day of year out of range

though if you change the unused fields to 1 it works:

>>> time.strftime("%Y-%m-%d", (2005, 6, 4) + (1,)*6)
'2005-06-04'

While this wasn't documented behavior, it was certainly behaviour that worked for a long time. It should probably be allowed to continue working.

Skip