Patch by Hynek Schlawack.
raise ValueError("unconverted data remains: %s" %
data_string[found.end():])
- year = 1900
+ year = None
month = day = 1
hour = minute = second = fraction = 0
tz = -1
else:
tz = value
break
+ if year is None and month == 2 and day == 29:
+ year = 1904 # 1904 is first leap year of 20th century
+ elif year is None:
+ year = 1900
# If we know the week of the year and what day of that week, we can figure
# out the Julian day of the year.
if julian == -1 and week_of_year != -1 and weekday != -1:
need_escaping = ".^$*+?{}\[]|)("
self.assertTrue(_strptime._strptime_time(need_escaping, need_escaping))
+ def test_feb29_on_leap_year_without_year(self):
+ time.strptime("Feb 29", "%b %d")
+
class Strptime12AMPMTests(unittest.TestCase):
"""Test a _strptime regression in '%I %p' at 12 noon (12 PM)"""
Library
-------
+- Issue #14157: Fix time.strptime failing without a year on February 29th.
+ Patch by Hynek Schlawack.
+
- Issue #14768: os.path.expanduser('~/a') doesn't works correctly when HOME is '/'.
- Issue #14741: Fix missing support for Ellipsis ('...') in parser module.