Made all dateutil submodules lazily imported using PEP 562. On Python 3.7+, things like import dateutil; dateutil.tz.gettz("America/New_York") will now work without explicitly importing dateutil.tz, with the import occurring behind the scenes on first use. The old behavior remains on Python 3.6 and earlier. Fixed by Orson Adams. (gh issue #771, gh pr #1007)
Bugfixes
Removed a call to datetime.utcfromtimestamp, which is deprecated as of Python 3.12. Reported by Hugo van Kemenade (gh pr #1284), fixed by Thomas Grainger (gh pr #1285).
Documentation changes
Added note into docs and tests where relativedelta would return last day of the month only if the same day on a different month resolves to a date that doesn't exist. Reported by @hawkEye-01 (gh issue #1167). Fixed by @Mifrill (gh pr #1168)
Made all dateutil submodules lazily imported using PEP 562 <https://www.python.org/dev/peps/pep-0562/>_. On Python 3.7+, things like
import dateutil; dateutil.tz.gettz("America/New_York") will now work
without explicitly importing dateutil.tz, with the import occurring behind
the scenes on first use. The old behavior remains on Python 3.6 and earlier.
Fixed by Orson Adams. (gh issue #771, gh pr #1007)
Bugfixes
Removed a call to datetime.utcfromtimestamp, which is deprecated as of Python 3.12. Reported by Hugo van Kemenade (gh pr #1284), fixed by Thomas Grainger (gh pr #1285).
Documentation changes
Added note into docs and tests where relativedelta would return last day of the month
only if the same day on a different month resolves to a date that doesn't exist.
Reported by @hawkEye-01 (gh issue #1167). Fixed by @Mifrill (gh pr #1168)
Commits
db9d018 Merge pull request #1343 from pganssle/release_2.9.0
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps python-dateutil from 2.8.2 to 2.9.0.
Release notes
Sourced from python-dateutil's releases.
Changelog
Sourced from python-dateutil's changelog.
Commits
db9d018
Merge pull request #1343 from pganssle/release_2.9.0423ca2f
Run updatezinfo before buildedd3fd4
Update NEWS filefe02d02
Run towncrier with Python 3.119c7524a
Fix MANIFEST.in pattern6de58f5
Update classifiers to include Python 3.128fe0cab
Merge pull request #1342 from pganssle/update_zoneinfoeb44095
Update zonefile_metadata to 2024a0586f4a
Merge pull request #1319 from dateutil/update_rtd9fb7b15
Update readthedocs configurationDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show