Skip to content

deps: update python-dateutil requirement from >=2.9.0.post0 to >=4.0.0 - #692

Merged
filthyrake merged 1 commit into
devfrom
dependabot/pip/python-dateutil-gte-4.0.0
Nov 9, 2026
Merged

filthyrake merged 1 commit into
devfrom
dependabot/pip/python-dateutil-gte-4.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 9, 2026 •

Copy link
Copy Markdown
Contributor

Updates the requirements on python-dateutil to permit the latest version.

Release notes

Sourced from python-dateutil's releases.

4.0.0

dateutil 4.0 requires Python 3.11 or later and no longer depends on six. Apart from that, the changes in this release are bug fixes, but note that isoparse is now stricter about the numeric fields it accepts (see below).

Deprecations

  • Dropped support for Python versions older than 3.11 and removed the dependency on six, along with Python 2 compatibility helpers that were never part of the public API, such as dateutil.tz.tzname_in_python2. (gh pr #1625)

Bugfixes

  • parser.isoparse, and the isoparser methods parse_isodate, parse_isotime and parse_tzstr, now require each numeric field to be exactly the expected number of ASCII digits. Strings that were previously accepted, such as 20200728121240 (read as 21:24), 2014- 4-21 and 2_14-04-21, and offsets such as +-1:00, now raise ValueError. tzical applies the same check to TZOFFSETFROM and TZOFFSETTO. Reported by @​janos-gonye (gh issue #1074). Fixed by @​varun3257 (gh pr #1617).
  • Fixed an issue where iterating over a cached rrule or rruleset could hang forever if another iterator over the same rule had already completed the cache, for example when a cached rrule was included twice in an rruleset. Reported by @​bysiber (gh pr #1455). Fixed by @​pganssle (gh pr #1655).
  • Unpickling a tzutc now gives the dateutil.tz.UTC singleton, and unpickling a tzoffset gives the same object as calling tzoffset(name, offset). Previously unpickling bypassed the singleton-generation logic. Reported and fixed by @​masipcat (gh issue #1051, gh pr #1053).
  • relativedelta(yearday=366) now resolves to December 31 in leap years. Previously it gave December 30, the same date as yearday=365. Reported and fixed by @​Master-Norna (gh pr #1583).

Misc

  • The build backend is now Hatchling, and the package metadata is in pyproject.toml. Versions are still derived from Git tags and exposed as dateutil.__version__. This mainly affects people building dateutil from source. (gh pr #1637, #1638)
  • Changes to CI, tests and release tooling that do not affect users of the package: gh pr #1636, #1644, #1645, #1646, #1648, #1649, #1650.
Changelog

Sourced from python-dateutil's changelog.

Version 4.0.0 (2026-11-01)

dateutil 4.0 requires Python 3.11 or later and no longer depends on six. Apart from that, the changes in this release are bug fixes, but note that isoparse is now stricter about the numeric fields it accepts (see below).

Deprecations

  • Dropped support for Python versions older than 3.11 and removed the dependency on six, along with Python 2 compatibility helpers that were never part of the public API, such as dateutil.tz.tzname_in_python2. (gh pr #1625)

Bugfixes

  • parser.isoparse, and the isoparser methods parse_isodate, parse_isotime and parse_tzstr, now require each numeric field to be exactly the expected number of ASCII digits. Strings that were previously accepted, such as 20200728121240 (read as 21:24), 2014- 4-21 and 2_14-04-21, and offsets such as +-1:00, now raise ValueError. tzical applies the same check to TZOFFSETFROM and TZOFFSETTO. Reported by @​janos-gonye (gh issue #1074). Fixed by @​varun3257 (gh pr #1617).
  • Fixed an issue where iterating over a cached rrule or rruleset could hang forever if another iterator over the same rule had already completed the cache, for example when a cached rrule was included twice in an rruleset. Reported by @​bysiber (gh pr #1455). Fixed by @​pganssle (gh pr #1655).
  • Unpickling a tzutc now gives the dateutil.tz.UTC singleton, and unpickling a tzoffset gives the same object as calling tzoffset(name, offset). Previously unpickling bypassed the singleton-generation logic. Reported and fixed by @​masipcat (gh issue #1051, gh pr #1053).
  • relativedelta(yearday=366) now resolves to December 31 in leap years. Previously it gave December 30, the same date as yearday=365. Reported and fixed by @​Master-Norna (gh pr #1583).

Misc

  • The build backend is now Hatchling, and the package metadata is in pyproject.toml. Versions are still derived from Git tags and exposed as dateutil.__version__. This mainly affects people building dateutil from source. (gh pr #1637, #1638)
  • Changes to CI, tests and release tooling that do not affect users of the

... (truncated)

Commits
  • a78cbd8 Prepare release 4.0.0
  • d23ff76 Fix yearday=366 resolving to Dec 30 in leap years
  • 5391455 Return the cached instances when unpickling tzutc and tzoffset
  • 6f13622 Reject non-digit characters in isoparse and tzical numeric fields
  • 6e1864c Release the rrule cache lock on every exit from a refill (#1655)
  • 71d92da Skip coverage collection on PyPy in CI
  • d9cad2f Run the tests in parallel with pytest-xdist (#1649)
  • 433c98b Add news fragment for #1650
  • ea6bc3f Remove stale warning from the tz tox environments
  • 27ecba2 Keep GitHub Actions pins updated with Dependabot
  • Additional commits viewable in compare view

@dependabot
dependabot Bot force-pushed the dependabot/pip/python-dateutil-gte-4.0.0 branch 3 times, most recently from 587e31c to d7c783a Compare November 9, 2026 01:20
@filthyrake

Copy link
Copy Markdown
Owner

@dependabot rebase

Updates the requirements on [python-dateutil](https://github.com/dateutil/dateutil) to permit the latest version.
- [Release notes](https://github.com/dateutil/dateutil/releases)
- [Changelog](https://github.com/dateutil/dateutil/blob/master/NEWS)
- [Commits](dateutil/dateutil@2.9.0.post0...4.0.0)

---
updated-dependencies:
- dependency-name: python-dateutil
  dependency-version: 4.0.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/pip/python-dateutil-gte-4.0.0 branch from d7c783a to 708dfae Compare November 9, 2026 01:22
@filthyrake
filthyrake merged commit 70c9146 into dev Nov 9, 2026
2 of 3 checks passed
@filthyrake
filthyrake deleted the dependabot/pip/python-dateutil-gte-4.0.0 branch November 9, 2026 01:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant