All Versions
13
Latest Version
Avg Release Cycle
223 days
Latest Release
832 days ago
Changelog History
Page 2
Changelog History
Page 2
-
v2.7.0 Changes
March 11, 2018- ⬇️ Dropped support for Python 2.6 (gh pr #362 by @jdufresne)
- ⬇️ Dropped support for Python 3.2 (gh pr #626)
- ⚡️ Updated zoneinfo file to 2018c (gh pr #616)
- 🔄 Changed licensing scheme so all new contributions are dual licensed under
Apache 2.0 and BSD. (gh pr #542, issue #496) - Added all variable to the root package. Reported by @tebriel
🛠 (gh issue #406), fixed by @mariocj89 (gh pr #494) - ➕ Added python_requires to setup.py so that pip will distribute the right
🔖 version of dateutil. Fixed by @jakec-github (gh issue #537, pr #552) - ➕ Added the utils submodule, for miscellaneous utilities.
- ➕ Added within_delta function to utils - added by @justanr (gh issue #432,
gh pr #437) - ➕ Added today function to utils (gh pr #474)
- ➕ Added default_tzinfo function to utils (gh pr #475), solving an issue
reported by @nealmcb (gh issue #94) - ➕ Added dedicated ISO 8601 parsing function isoparse (gh issue #424).
🎉 Initial implementation by @pganssle in gh pr #489 and #622, with a
🚀 pre-release fix by @kirit93 (gh issue #546, gh pr #573). - 🚚 Moved parser module into parser/_parser.py and officially deprecated the use
of several private functions and classes from that module. (gh pr #501, #515) - 📜 Tweaked parser error message to include rejected string format, added by
@pbiering (gh pr #300) - ➕ Add support for parsing bytesarray, reported by @uckelman (gh issue #417) and
🛠 fixed by @uckelman and @pganssle (gh pr #514) - ⚠ Started raising a warning when the parser finds a timezone string that it
cannot construct a tzinfo instance for (rather than succeeding with no
🛠 indication of an error). Reported and fixed by @jbrockmendel (gh pr #540) - ⬇️ Dropped the use of assert in the parser. Fixed by @jbrockmendel (gh pr #502)
- 🛠 Fixed to assertion logic in parser to support dates like '2015-15-May',
🛠 reported and fixed by @jbrockmendel (gh pr #409) - 🛠 Fixed IndexError in parser on dates with trailing colons, reported and fixed
by @jbrockmendel (gh pr #420) - 🛠 Fixed bug where hours were not validated, leading to improper parse. Reported
🛠 by @heappro (gh pr #353), fixed by @jbrockmendel (gh pr #482) - 🛠 Fixed problem parsing strings in %b-%Y-%d format. Reported and fixed by
@jbrockmendel (gh pr #481) - 🛠 Fixed problem parsing strings in the %d%B%y format. Reported by @asishm
🛠 (gh issue #360), fixed by @jbrockmendel (gh pr #483) - 🛠 Fixed problem parsing certain unambiguous strings when year <99 (gh pr #510).
Reported by @alexwlchan (gh issue #293). - 🛠 Fixed issue with parsing an unambiguous string representation of an ambiguous
🛠 datetime such that if possible the correct value for fold is set. Fixes
issue reported by @JordonPhillips and @pganssle (gh issue #318, #320,
gh pr #517) - 🛠 Fixed issue with improper rounding of fractional components. Reported by
🛠 @dddmello (gh issue #427), fixed by @m-dz (gh pr #570) - 🐎 Performance improvement to parser from removing certain min() calls. Reported
🛠 and fixed by @jbrockmendel (gh pr #589) - 🔨 Significantly refactored parser code by @jbrockmendel (gh prs #419, #436,
#490, #498, #539) and @pganssle (gh prs #435, #468) - Implementated of hash for relativedelta and weekday, reported and fixed
by @mrigor (gh pr #389) - Implemented abs for relativedelta. Reported by @binnisb and @pferreir
(gh issue #350, pr #472) - 🛠 Fixed relativedelta.weeks property getter and setter to work for both
🛠 negative and positive values. Reported and fixed by @souliane (gh issue #459,
pr #460) - 🛠 Fixed issue where passing whole number floats to the months or years
arguments of the relativedelta constructor would lead to errors during
➕ addition. Reported by @arouanet (gh pr #411), fixed by @lkollar (gh pr #553) - ➕ Added a pre-built tz.UTC object representing UTC (gh pr #497)
- ➕ Added a cache to tz.gettz so that by default it will return the same object
for identical inputs. This will change the semantics of certain operations
between datetimes constructed with tzinfo=tz.gettz(...). (gh pr #628) - 🔄 Changed the behavior of tz.tzutc to return a singleton (gh pr #497, #504)
- 🔄 Changed the behavior of tz.tzoffset to return the same object when passed the
🐎 same inputs, with a corresponding performance improvement (gh pr #504) - 🔄 Changed the behavior of tz.tzstr to return the same object when passed the
same inputs. (gh pr #628) - ➕ Added .instance alternate constructors for tz.tzoffset and tz.tzstr, to
👍 allow the construction of a new instance if desired. (gh pr #628) - ➕ Added the tz.gettz.nocache function to allow explicit retrieval of a new
instance of the relevant tzinfo. (gh pr #628) - Expand definition of tz.tzlocal equality so that the local zone is allow
equality with tzoffset and tzutc. (gh pr #598) - 🗄 Deprecated the idiosyncratic tzstr format mentioned in several examples but
evidently designed exclusively for dateutil, and very likely not used by
any current users. (gh issue #595, gh pr #606) - ➕ Added the tz.resolve_imaginary function, which generates a real date from
an imaginary one, if necessary. Implemented by @Cheukting (gh issue #339,
gh pr #607) - 🛠 Fixed issue where the tz.tzstr constructor would erroneously succeed if
🔊 passed an invalid value for tzstr. Fixed by @pablogsal (gh issue #259,
gh pr #581) - 🛠 Fixed issue with tz.gettz for TZ variables that start with a colon. Reported
🛠 and fixed by @lapointexavier (gh pr #601) - ➕ Added a lock to tz.tzical's cache. Reported and fixed by @Unrud (gh pr #430)
- 🛠 Fixed an issue with fold support on certain Python 3 implementations that
👉 used the pre-3.6 pure Python implementation of datetime.replace, most
notably pypy3 (gh pr #446). - ➕ Added support for VALUE=DATE-TIME for DTSTART in rrulestr. Reported by @potuz
🛠 (gh issue #401) and fixed by @Unrud (gh pr #429) - Started enforcing that within VTIMEZONE, the VALUE parameter can only be
omitted or DATE-TIME, per RFC 5545. Reported by @Unrud (gh pr #439) - ➕ Added support for TZID parameter for DTSTART in rrulestr. Reported and
🛠 fixed by @ryanpetrello (gh issue #614, gh pr #624) - Added 'RRULE:' prefix to rrule strings generated by rrule. str , in
🛠 compliance with the RFC. Reported by @AndrewPashkin (gh issue #86), fixed by
@jarondl and @mlorant (gh pr #450) - Switched to setuptools_scm for version management, automatically calculating
📇 a version number from the git metadata. Reported by @jreback (gh issue #511),
implemented by @Sulley38 (gh pr #564) - 📦 Switched setup.py to use find_packages, and started testing against pip
📜 installed versions of dateutil in CI. Fixed issue with parser import
discovered by @jreback in pandas-dev/pandas#18141. (gh issue #507, pr #509) - ✅ Switched test suite to using pytest (gh pr #495)
- 👷 Switched CI over to use tox. Fixed by @gaborbernat (gh pr #549)
- ➕ Added a test-only dependency on freezegun. (gh pr #474)
- ⬇️ Reduced number of CI builds on Appveyor. Fixed by @kirit93 (gh issue #529,
gh pr #579) - 0️⃣ Made xfails strict by default, so that an xpass is a failure. (gh pr #567)
- ➕ Added a documentation generation stage to tox and CI. (gh pr #568)
- ➕ Added an explicit warning when running python setup.py explaining how to run
✅ the test suites with pytest. Fixed by @lkollar. (gh issue #544, gh pr #548) - ➕ Added requirements-dev.txt for test dependency management (gh pr #499, #516)
- 🛠 Fixed code coverage metrics to account for Windows builds (gh pr #526)
- 🛠 Fixed code coverage metrics to NOT count xfails. Fixed by @gaborbernat
(gh issue #519, gh pr #563) - 💅 Style improvement to zoneinfo.tzfile that was confusing to static type
🛠 checkers. Reported and fixed by @quodlibetor (gh pr #485) - 🚚 Several unused imports were removed by @jdufresne. (gh pr #486)
- Switched isinstance(*, collections.Callable) to callable, which is available
👍 on all supported Python versions. Implemented by @jdufresne (gh pr #612) - ➕ Added CONTRIBUTING.md (gh pr #533)
- ➕ Added AUTHORS.md (gh pr #542)
- 📇 Corrected setup.py metadata to reflect author vs. maintainer, (gh issue #477,
gh pr #538) - ✅ Corrected README to reflect that tests are now run in pytest. Reported and
🛠 fixed by @m-dz (gh issue #556, gh pr #557) - ⚡️ Updated all references to RFC 2445 (iCalendar) to point to RFC 5545. Fixed
by @mariocj89 (gh issue #543, gh pr #555) - 📚 Corrected parse documentation to reflect proper integer offset units,
🛠 reported and fixed by @abrugh (gh pr #458) - 🛠 Fixed dangling parenthesis in tzoffset documentation (gh pr #461)
- 🛠 Started including the license file in wheels. Reported and fixed by
@jdufresne (gh pr #476) - 📜 Indendation fixes to parser docstring by @jbrockmendel (gh pr #492)
- 📚 Moved many examples from the "examples" documentation into their appropriate
📚 module documentation pages. Fixed by @Tomasz-Kluczkowski and @jakec-github
(gh pr #558, #561) - 🛠 Fixed documentation so that the parser.isoparse documentation displays.
🛠 Fixed by @alexchamberlain (gh issue #545, gh pr #560) - 🚀 Refactored build and release sections and added setup instructions to
🛠 CONTRIBUTING. Reported and fixed by @kynan (gh pr #562) - 📚 Cleaned up various dead links in the documentation. (gh pr #602, #608, #618)
-
v2.6.1 Changes
July 10, 2017- ⚡️ Updated zoneinfo file to 2017b. (gh pr #395)
- ➕ Added Python 3.6 to CI testing (gh pr #365)
- ✂ Removed duplicate test name that was preventing a test from being run.
🛠 Reported and fixed by @jdufresne (gh pr #371) - 🛠 Fixed testing of folds and gaps, particularly on Windows (gh pr #392)
- 🛠 Fixed deprecated escape characters in regular expressions. Reported by
🛠 @nascheme and @thierryba (gh issue #361), fixed by @thierryba (gh pr #358) - 💅 Many PEP8 style violations and other code smells were fixed by @jdufresne
(gh prs #358, #363, #364, #366, #367, #368, #372, #374, #379, #380, #398) - 👌 Improved performance of tzutc and tzoffset objects. (gh pr #391)
- 🛠 Fixed issue with several time zone classes around DST transitions in any
zones with +0 standard offset (e.g. Europe/London) (gh issue #321, pr #390) - 🛠 Fixed issue with fuzzy parsing where tokens similar to AM/PM that are in the
end skipped were dropped in the fuzzy_with_tokens list. Reported and fixed
by @jbrockmendel (gh pr #332). - 🛠 Fixed issue with parsing dates of the form X m YY. Reported by @jbrockmendel.
(gh issue #333, pr #393) - ➕ Added support for parser weekdays with less than 3 characters. Reported by
🛠 @arcadefoam (gh issue #343), fixed by @jonemo (gh pr #382) - 🛠 Fixed issue with the addition and subtraction of certain relativedeltas.
🛠 Reported and fixed by @kootenpv (gh issue #346, pr #347) - 🛠 Fixed issue where the COUNT parameter of rrules was ignored if 0. Fixed by
@mshenfield (gh pr #330), reported by @vaultah (gh issue #329). - 📚 Updated documentation to include the new tz methods. (gh pr #324)
- 📚 Update documentation to reflect that the parser can raise TypeError, reported
🛠 and fixed by @tomchuk (gh issue #336, pr #337) - 🛠 Fixed an incorrect year in a parser doctest. Fixed by @xlotlu (gh pr #357)
- 🚚 Moved version information into _version.py and set up the versions more
granularly.
-
v2.6.0 Changes
November 08, 2016- ➕ Added PEP-495-compatible methods to address ambiguous and imaginary dates in
time zones in a backwards-compatible way. Ambiguous dates and times can now
be safely represented by all dateutil time zones. Many thanks to Alexander
Belopolski (@abalkin) and Tim Peters @tim-one for their inputs on how to
➕ address this. Original issues reported by Yupeng and @zed (lP: 1390262,
gh issues #57, #112, #249, #284, #286, prs #127, #225, #248, #264, #302). - ➕ Added new methods for working with ambiguous and imaginary dates to the tz
module. datetime_ambiguous() determines if a datetime is ambiguous for a given
zone and datetime_exists() determines if a datetime exists in a given zone.
This works for all fold-aware datetimes, not just those provided by dateutil.
(gh issue #253, gh pr #302) - 🛠 Fixed an issue where dst() in Portugal in 1996 was returning the wrong value
in tz.tzfile objects. Reported by @abalkin (gh issue #128, pr #225) - 🛠 Fixed an issue where zoneinfo.ZoneInfoFile errors were not being properly
deep-copied. (gh issue #226, pr #225) - 🔨 Refactored tzwin and tzrange as a subclass of a common class, tzrangebase, as
there was substantial overlapping functionality. As part of this change,
tzrange and tzstr now expose a transitions() function, which returns the
DST on and off transitions for a given year. (gh issue #260, pr #302) - 🗄 Deprecated zoneinfo.gettz() due to confusion with tz.gettz(), in favor of
get() method of zoneinfo.ZoneInfoFile objects. (gh issue #11, pr #310) - 📜 For non-character, non-stream arguments, parser.parse now raises TypeError
instead of AttributeError. (gh issues #171, #269, pr #247) - 🛠 Fixed an issue where tzfile objects were not properly handling dst() and
tzname() when attached to datetime.time objects. Reported by @ovacephaloid.
(gh issue #292, pr #309) - /usr/share/lib/zoneinfo was added to TZPATHS for compatibility with Solaris
systems. Reported by @dhduvall (gh issue #276, pr #307) - tzoffset and tzrange objects now accept either a number of seconds or a
datetime.timedelta() object wherever previously only a number of seconds was
👍 allowed. (gh pr #264, #277) - datetime.timedelta objects can now be added to relativedelta objects. Reported
and added by Alec Nikolas Reiter (@justanr) (gh issue #282, pr #283 - 🔨 Refactored relativedelta.weekday and rrule.weekday into a common base class
to reduce code duplication. (gh issue #140, pr #311) - An issue where the WKST parameter was improperly rendering in str(rrule) was
🛠 reported and fixed by Daniel LePage (@dplepage). (gh issue #262, pr #263) - A replace() method has been added to rrule objects by @jendas1, which creates
🆕 new rrule with modified attributes, analogous to datetime.replace (gh pr #167) - 🐎 Made some significant performance improvements to rrule objects in Python 2.x
(gh pr #245) - All classes defining equality functions now return NotImplemented when
👍 compared to unsupported classes, rather than raising TypeError, to allow other
👍 classes to provide fallback support. (gh pr #236) - Several classes have been marked as explicitly unhashable to maintain
identical behavior between Python 2 and 3. Submitted by Roy Williams
(@rowillia) (gh pr #296) - 🚚 Trailing whitespace in easter.py has been removed. Submitted by @OmgImAlexis
(gh pr #299) - 🏁 Windows-only batch files in build scripts had line endings switched to CRLF.
(gh pr #237) - 📚 @adamchainz updated the documentation links to reflect that the canonical
location for readthedocs links is now at .io, not .org. (gh pr #272) - 👷 Made some changes to the CI and codecov to test against newer versions of
Python and pypy, and to adjust the code coverage requirements. For the moment,
🚀 full pypy3 compatibility is not supported until a new release is available,
👍 due to upstream bugs in the old version affecting PEP-495 support.
(gh prs #265, #266, #304, #308) - 🖨 The full PGP signing key fingerprint was added to the README.md in favor of
the previously used long-id. Reported by @valholl (gh issue #287, pr #304) - ⚡️ Updated zoneinfo to 2016i. (gh issue #298, gh pr #306)
- ➕ Added PEP-495-compatible methods to address ambiguous and imaginary dates in