Python-dateutil

Latest version: v2.9.0.post0

Safety actively analyzes 681812 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 6

2.9.0.post0

================================

Bugfixes
--------

- Pinned ``setuptools_scm`` to ``<8``, which should make the generated ``_version.py`` file compatible with all supported versions of Python.

2.9.0

==========================

Data updates
------------

- Updated tzdata version to 2024a. (gh pr 1342)


Features
--------

- 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)

2.8.2

==========================

Data updates
------------

- Updated tzdata version to 2021a. (gh pr 1128)


Bugfixes
--------

- Fixed a bug in the parser where non-``ValueError`` exceptions would be raised
during exception handling; this would happen, for example, if an
``IllegalMonthError`` was raised in ``dateutil`` code. Fixed by Mark Bailey.
(gh issue 981, pr 987).
- Fixed the custom ``repr`` for ``dateutil.parser.ParserError``, which was not
defined due to an indentation error. (gh issue 991, gh pr 993)
- Fixed a bug that caused ``b'`` prefixes to appear in parse_isodate exception
messages. Reported and fixed by Paul Brown (pawl) (gh pr 1122)
- Make ``isoparse`` raise when trying to parse times with inconsistent use of
`:` separator. Reported and fixed by mariocj89 (gh pr 1125).
- Fixed ``tz.gettz()`` not returning local time when passed an empty string.
Reported by labrys (gh issues 925, 926). Fixed by ffe4 (gh pr 1024)


Documentation changes
---------------------

- Rearranged parser documentation into "Functions", "Classes" and "Warnings and
Exceptions" categories. (gh issue 992, pr 994).
- Updated ``parser.parse`` documentation to reflect the switch from
``ValueError`` to ``ParserError``. (gh issue 992, pr 994).
- Fixed methods in the ``rrule`` module not being displayed in the docs. (gh pr
1025)
- Changed some relative links in the exercise documentation to refer to the
document locations in the input tree, rather than the generated HTML files in
the HTML output tree (which presumably will not exist in non-HTML output
formats). (gh pr 1078).


Misc
----

- Moved ``test_imports.py``, ``test_internals.py`` and ``test_utils.py`` to
pytest. Reported and fixed by jpurviance (gh pr 978)
- Added project_urls for documentation and source. Patch by andriyor (gh pr
975).
- Simplified handling of bytes and bytearray in ``_parser._timelex``. Reported
and fixed by frenzymadness (gh issue 1060).
- Changed the tests against the upstream tz database to always generate fat
binaries, since until GH-590 and GH-1059 are resolved, "slim" zic binaries
will cause problems in many zones, causing the tests to fail. This also
updates ``zoneinfo.rebuild`` to always generate fat binaries. (gh pr 1076).
- Moved sdist and wheel generation to use `python-build`. Reported and fixed by
mariocj89 (gh pr 1133).

2.8.1

==========================

Data updates
------------

- Updated tzdata version to 2019c.


Bugfixes
--------

- Fixed a race condition in the ``tzoffset`` and ``tzstr`` "strong" caches on
Python 2.7. Reported by kainjow (gh issue 901).
- Parsing errors will now raise ``ParserError``, a subclass of ``ValueError``,
which has a nicer string representation. Patch by gfyoung (gh pr 881).
- ``parser.parse`` will now raise ``TypeError`` when ``tzinfos`` is passed a
type that cannot be interpreted as a time zone. Prior to this change, it
would raise an ``UnboundLocalError`` instead. Patch by jbrockmendel (gh pr
891).
- Changed error message raised when when passing a ``bytes`` object as the time
zone name to gettz in Python 3. Reported and fixed by labrys () (gh issue
927, gh pr 935).
- Changed compatibility logic to support a potential Python 4.0 release. Patch
by Hugo van Kemenade (gh pr 950).
- Updated many modules to use ``tz.UTC`` in favor of ``tz.tzutc()`` internally,
to avoid an unnecessary function call. (gh pr 910).
- Fixed issue where ``dateutil.tz`` was using a backported version of
``contextlib.nullcontext`` even in Python 3.7 due to a malformed import
statement. (gh pr 963).


Tests
-----

- Switched from using assertWarns to using pytest.warns in the test suite. (gh
pr 969).
- Fix typo in setup.cfg causing PendingDeprecationWarning to not be explicitly
specified as an error in the warnings filter. (gh pr 966)
- Fixed issue where ``test_tzlocal_offset_equal`` would fail in certain
environments (such as FreeBSD) due to an invalid assumption about what time
zone names are provided. Reported and fixed by Kubilay Kocak (gh issue 918,
pr 928).
- Fixed a minor bug in ``test_isoparser`` related to ``bytes``/``str``
handling. Fixed by fhuang5 (gh issue 776, gh pr 879).
- Explicitly listed all markers used in the pytest configuration. (gh pr 915)
- Extensive improvements to the parser test suite, including the adoption of
``pytest``-style tests and the addition of parametrization of several test
cases. Patches by jbrockmendel (gh prs 735, 890, 892, 894).
- Added tests for tzinfos input types. Patch by jbrockmendel (gh pr 891).
- Fixed failure of test suite when changing the TZ variable is forbidden.
Patch by shadchin (gh pr 893).
- Pinned all test dependencies on Python 3.3. (gh prs 934, 962)


Documentation changes
---------------------

- Fixed many misspellings, typos and styling errors in the comments and
documentation. Patch by Hugo van Kemenade (gh pr 952).


Misc
----

- Added Python 3.8 to the trove classifiers. (gh pr 970)
- Moved as many keys from ``setup.py`` to ``setup.cfg`` as possible. Fixed by
FakeNameSE, aquinlan82, jachen20, and gurgenz221 (gh issue 871, gh pr
880).
- Reorganized ``parser`` methods by functionality. Patch by jbrockmendel (gh
pr 882).
- Switched ``release.py`` over to using ``pep517.build`` for creating releases,
rather than direct invocations of ``setup.py``. Fixed by smeng10 (gh issue
869, gh pr 875).
- Added a "build" environment into the tox configuration, to handle dependency
management when making releases. Fixed by smeng10 (gh issue 870,r
gh pr 876).
- GH 916, GH 971

2.8.0

==========================

Data updates
------------

- Updated tzdata version to to 2018i.


Features
--------

- Added support for ``EXDATE`` parameters when parsing ``rrule`` strings.
Reported by mlorant (gh issue 410), fixed by nicoe (gh pr 859).
- Added support for sub-minute time zone offsets in Python 3.6+.
Fixed by cssherry (gh issue 582, pr 763)
- Switched the ``tzoffset``, ``tzstr`` and ``gettz`` caches over to using weak
references, so that the cache expires when no other references to the
original ``tzinfo`` objects exist. This cache-expiry behavior is not
guaranteed in the public interface and may change in the future. To improve
performance in the case where transient references to the same time zones
are repeatedly created but no strong reference is continuously held, a
smaller "strong value" cache was also added. Weak value cache implemented by
cs-cordero (gh pr 672, 801), strong cache added by
Gökçen Nurlu (gh issue 691, gh pr 761)


Bugfixes
--------

- Add support for ISO 8601 times with comma as the decimal separator in the
``dateutil.parser.isoparse`` function. (gh pr 721)
- Changed handling of ``T24:00`` to be compliant with the standard. ``T24:00``
now represents midnight on the *following* day.
Fixed by cheukting (gh issue 658, gh pr 751)
- Fixed an issue where ``isoparser.parse_isotime`` was unable to handle the
``24:00`` variant representation of midnight. (gh pr 773)
- Added support for more than 6 fractional digits in `isoparse`.
Reported and fixed by jayschwa (gh issue 786, gh pr 787).
- Added 'z' (lower case Z) as valid UTC time zone in isoparser.
Reported by cjgibson (gh issue 820). Fixed by Cheukting (gh pr 822)
- Fixed a bug with base offset changes during DST in ``tzfile``, and refactored
the way base offset changes are detected. Originally reported on
Stack Overflow by MartinThoma. (gh issue 812, gh pr 810)
- Fixed error condition in ``tz.gettz`` when a non-ASCII timezone is passed on
Windows in Python 2.7. (gh issue 802, pr 861)
- Improved performance and inspection properties of ``tzname`` methods.
(gh pr 811)
- Removed unnecessary binary_type compatibility shims.
Added by jdufresne (gh pr 817)
- Changed ``python setup.py test`` to print an error to ``stderr`` and exit
with 1 instead of 0. Reported and fixed by hroncok (gh pr 814)
- Added a ``pyproject.toml`` file with build requirements and an explicitly
specified build backend. (gh issue 736, gh prs 746, 863)


Documentation changes
---------------------

- Added documentation for the ``rrule.rrulestr`` function.
Fixed by prdickson (gh issue 623, gh pr 762)
- Add documentation for the ``dateutil.tz.win`` module and mocked out certain
Windows-specific modules so that autodoc can still be run on non-Windows
systems. (gh issue 442, pr 715)
- Added changelog to documentation. (gh issue 692, gh pr 707)
- Improved documentation on the use of ``until`` and ``count`` parameters in
``rrule``. Fixed by lucaferocino (gh pr 755).
- Added an example of how to use a custom ``parserinfo`` subclass to parse
non-standard datetime formats in the examples documentation for ``parser``.
Added by prdickson (gh 753)
- Expanded the description and examples in the ``relativedelta`` class.
Contributed by andrewcbennett (gh pr 759)
- Improved the contributing documentation to clarify where to put new changelog
files. Contributed by andrewcbennett (gh pr 757)
- Fixed a broken doctest in the ``relativedelta`` module.
Fixed by nherriot (gh pr 758).
- Reorganized ``dateutil.tz`` documentation and fixed issue with the
``dateutil.tz`` docstring. (gh pr 714)


Misc
----

- GH 720, GH 723, GH 726, GH 727, GH 740, GH 750, GH 760, GH 767,
GH 772, GH 773, GH 780, GH 784, GH 785, GH 791, GH 799, GH 813,
GH 836, GH 839, GH 857

2.7.5

==========================

Data updates
------------

- Update tzdata to 2018g

Page 1 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.