Skip to content

Upgrading python-dateutil 3 to 4

Breaking3.0.0 → 4.0.0Breaking1Platform1Fixed3Other2

BreakingUpgrade verdict

1 breaking change and a platform requirement change.

  • Date parsing is stricter now: malformed date and time strings that used to be accepted will raise an error instead.
  • This version only works on Python 3.11 and newer, and it no longer needs the old six compatibility library.
2 items need code or config changes

Python requirement changed in 4.0.0: !=3.0.*,!=3.1.*,!=3.2.*,>=2.7 → >=3.11.

Breaking1
isoparse and isoparser methods now require each numeric field to be exactly the expected number of ASCII digits, raising ValueError otherwise.
parser.isoparseisoparser.parse_isodateisoparser.parse_isotimeisoparser.parse_tzstrtzicalTZOFFSETFROMTZOFFSETTO
Platform1
Requires Python 3.11 or later and drops the dependency on six and Python 2 compatibility helpers.
dateutil.tz.tzname_in_python2six

Generated by DepDelta from published Python source. Not mixed with prose notes.

  • changed: class isoparser(object) → class isoparser
  • changed: class relativedelta(object) → class relativedelta
  • removed: variable TZPATH
  • changed: class tzical(object) → class tzical
  • changed: class tzres(object) → class tzres