Paul Ganssle | 256012b | 2018-03-26 10:26:05 -0400 | [diff] [blame] | 1 | Version 2.7.2 (2018-03-26) |
| 2 | ========================== |
| 3 | |
| 4 | Bugfixes |
| 5 | -------- |
| 6 | |
| 7 | - Fixed an issue with the setup script running in non-UTF-8 environment. |
| 8 | Reported and fixed by @gergondet (gh pr #651) |
| 9 | |
| 10 | |
| 11 | Misc |
| 12 | ---- |
| 13 | |
| 14 | - GH #655 |
| 15 | |
| 16 | |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 17 | Version 2.7.1 (2018-03-24) |
| 18 | =========================== |
| 19 | |
| 20 | Data updates |
| 21 | ------------ |
| 22 | |
| 23 | - Updated tzdata version to 2018d. |
| 24 | |
| 25 | |
| 26 | Bugfixes |
| 27 | -------- |
| 28 | |
| 29 | - Fixed issue where parser.parse would occasionally raise |
| 30 | decimal.Decimal-specific error types rather than ValueError. Reported by |
| 31 | @amureki (gh issue #632). Fixed by @pganssle (gh pr #636). |
| 32 | - Improve error message when rrule's dtstart and until are not both naive or |
| 33 | both aware. Reported and fixed by @ryanpetrello (gh issue #633, gh pr #634) |
| 34 | |
| 35 | |
| 36 | Misc |
| 37 | ---- |
| 38 | |
| 39 | - GH #644, GH #648 |
| 40 | |
| 41 | |
Paul Ganssle | b8c60c3 | 2018-03-11 14:57:53 -0400 | [diff] [blame] | 42 | Version 2.7.0 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 43 | ============= |
Paul Ganssle | b8c60c3 | 2018-03-11 14:57:53 -0400 | [diff] [blame] | 44 | - Dropped support for Python 2.6 (gh pr #362 by @jdufresne) |
| 45 | - Dropped support for Python 3.2 (gh pr #626) |
| 46 | - Updated zoneinfo file to 2018c (gh pr #616) |
| 47 | - Changed licensing scheme so all new contributions are dual licensed under |
| 48 | Apache 2.0 and BSD. (gh pr #542, issue #496) |
| 49 | - Added __all__ variable to the root package. Reported by @tebriel |
| 50 | (gh issue #406), fixed by @mariocj89 (gh pr #494) |
| 51 | - Added python_requires to setup.py so that pip will distribute the right |
| 52 | version of dateutil. Fixed by @jakec-github (gh issue #537, pr #552) |
| 53 | - Added the utils submodule, for miscellaneous utilities. |
| 54 | - Added within_delta function to utils - added by @justanr (gh issue #432, |
| 55 | gh pr #437) |
| 56 | - Added today function to utils (gh pr #474) |
| 57 | - Added default_tzinfo function to utils (gh pr #475), solving an issue |
| 58 | reported by @nealmcb (gh issue #94) |
| 59 | - Added dedicated ISO 8601 parsing function isoparse (gh issue #424). |
| 60 | Initial implementation by @pganssle in gh pr #489 and #622, with a |
| 61 | pre-release fix by @kirit93 (gh issue #546, gh pr #573). |
| 62 | - Moved parser module into parser/_parser.py and officially deprecated the use |
| 63 | of several private functions and classes from that module. (gh pr #501, #515) |
| 64 | - Tweaked parser error message to include rejected string format, added by |
| 65 | @pbiering (gh pr #300) |
| 66 | - Add support for parsing bytesarray, reported by @uckelman (gh issue #417) and |
| 67 | fixed by @uckelman and @pganssle (gh pr #514) |
| 68 | - Started raising a warning when the parser finds a timezone string that it |
| 69 | cannot construct a tzinfo instance for (rather than succeeding with no |
| 70 | indication of an error). Reported and fixed by @jbrockmendel (gh pr #540) |
| 71 | - Dropped the use of assert in the parser. Fixed by @jbrockmendel (gh pr #502) |
| 72 | - Fixed to assertion logic in parser to support dates like '2015-15-May', |
| 73 | reported and fixed by @jbrockmendel (gh pr #409) |
| 74 | - Fixed IndexError in parser on dates with trailing colons, reported and fixed |
| 75 | by @jbrockmendel (gh pr #420) |
| 76 | - Fixed bug where hours were not validated, leading to improper parse. Reported |
| 77 | by @heappro (gh pr #353), fixed by @jbrockmendel (gh pr #482) |
| 78 | - Fixed problem parsing strings in %b-%Y-%d format. Reported and fixed by |
| 79 | @jbrockmendel (gh pr #481) |
| 80 | - Fixed problem parsing strings in the %d%B%y format. Reported by @asishm |
| 81 | (gh issue #360), fixed by @jbrockmendel (gh pr #483) |
| 82 | - Fixed problem parsing certain unambiguous strings when year <99 (gh pr #510). |
| 83 | Reported by @alexwlchan (gh issue #293). |
| 84 | - Fixed issue with parsing an unambiguous string representation of an ambiguous |
| 85 | datetime such that if possible the correct value for fold is set. Fixes |
| 86 | issue reported by @JordonPhillips and @pganssle (gh issue #318, #320, |
| 87 | gh pr #517) |
| 88 | - Fixed issue with improper rounding of fractional components. Reported by |
| 89 | @dddmello (gh issue #427), fixed by @m-dz (gh pr #570) |
| 90 | - Performance improvement to parser from removing certain min() calls. Reported |
| 91 | and fixed by @jbrockmendel (gh pr #589) |
| 92 | - Significantly refactored parser code by @jbrockmendel (gh prs #419, #436, |
| 93 | #490, #498, #539) and @pganssle (gh prs #435, #468) |
| 94 | - Implementated of __hash__ for relativedelta and weekday, reported and fixed |
| 95 | by @mrigor (gh pr #389) |
| 96 | - Implemented __abs__ for relativedelta. Reported by @binnisb and @pferreir |
| 97 | (gh issue #350, pr #472) |
| 98 | - Fixed relativedelta.weeks property getter and setter to work for both |
| 99 | negative and positive values. Reported and fixed by @souliane (gh issue #459, |
| 100 | pr #460) |
| 101 | - Fixed issue where passing whole number floats to the months or years |
| 102 | arguments of the relativedelta constructor would lead to errors during |
| 103 | addition. Reported by @arouanet (gh pr #411), fixed by @lkollar (gh pr #553) |
| 104 | - Added a pre-built tz.UTC object representing UTC (gh pr #497) |
| 105 | - Added a cache to tz.gettz so that by default it will return the same object |
| 106 | for identical inputs. This will change the semantics of certain operations |
| 107 | between datetimes constructed with tzinfo=tz.gettz(...). (gh pr #628) |
| 108 | - Changed the behavior of tz.tzutc to return a singleton (gh pr #497, #504) |
| 109 | - Changed the behavior of tz.tzoffset to return the same object when passed the |
| 110 | same inputs, with a corresponding performance improvement (gh pr #504) |
| 111 | - Changed the behavior of tz.tzstr to return the same object when passed the |
| 112 | same inputs. (gh pr #628) |
| 113 | - Added .instance alternate constructors for tz.tzoffset and tz.tzstr, to |
| 114 | allow the construction of a new instance if desired. (gh pr #628) |
| 115 | - Added the tz.gettz.nocache function to allow explicit retrieval of a new |
| 116 | instance of the relevant tzinfo. (gh pr #628) |
| 117 | - Expand definition of tz.tzlocal equality so that the local zone is allow |
| 118 | equality with tzoffset and tzutc. (gh pr #598) |
| 119 | - Deprecated the idiosyncratic tzstr format mentioned in several examples but |
| 120 | evidently designed exclusively for dateutil, and very likely not used by |
| 121 | any current users. (gh issue #595, gh pr #606) |
| 122 | - Added the tz.resolve_imaginary function, which generates a real date from |
| 123 | an imaginary one, if necessary. Implemented by @Cheukting (gh issue #339, |
| 124 | gh pr #607) |
| 125 | - Fixed issue where the tz.tzstr constructor would erroneously succeed if |
| 126 | passed an invalid value for tzstr. Fixed by @pablogsal (gh issue #259, |
| 127 | gh pr #581) |
| 128 | - Fixed issue with tz.gettz for TZ variables that start with a colon. Reported |
| 129 | and fixed by @lapointexavier (gh pr #601) |
| 130 | - Added a lock to tz.tzical's cache. Reported and fixed by @Unrud (gh pr #430) |
| 131 | - Fixed an issue with fold support on certain Python 3 implementations that |
| 132 | used the pre-3.6 pure Python implementation of datetime.replace, most |
| 133 | notably pypy3 (gh pr #446). |
| 134 | - Added support for VALUE=DATE-TIME for DTSTART in rrulestr. Reported by @potuz |
| 135 | (gh issue #401) and fixed by @Unrud (gh pr #429) |
| 136 | - Started enforcing that within VTIMEZONE, the VALUE parameter can only be |
| 137 | omitted or DATE-TIME, per RFC 5545. Reported by @Unrud (gh pr #439) |
| 138 | - Added support for TZID parameter for DTSTART in rrulestr. Reported and |
| 139 | fixed by @ryanpetrello (gh issue #614, gh pr #624) |
| 140 | - Added 'RRULE:' prefix to rrule strings generated by rrule.__str__, in |
| 141 | compliance with the RFC. Reported by @AndrewPashkin (gh issue #86), fixed by |
| 142 | @jarondl and @mlorant (gh pr #450) |
| 143 | - Switched to setuptools_scm for version management, automatically calculating |
| 144 | a version number from the git metadata. Reported by @jreback (gh issue #511), |
| 145 | implemented by @Sulley38 (gh pr #564) |
| 146 | - Switched setup.py to use find_packages, and started testing against pip |
| 147 | installed versions of dateutil in CI. Fixed issue with parser import |
| 148 | discovered by @jreback in pandas-dev/pandas#18141. (gh issue #507, pr #509) |
| 149 | - Switched test suite to using pytest (gh pr #495) |
| 150 | - Switched CI over to use tox. Fixed by @gaborbernat (gh pr #549) |
| 151 | - Added a test-only dependency on freezegun. (gh pr #474) |
| 152 | - Reduced number of CI builds on Appveyor. Fixed by @kirit93 (gh issue #529, |
| 153 | gh pr #579) |
| 154 | - Made xfails strict by default, so that an xpass is a failure. (gh pr #567) |
| 155 | - Added a documentation generation stage to tox and CI. (gh pr #568) |
| 156 | - Added an explicit warning when running python setup.py explaining how to run |
| 157 | the test suites with pytest. Fixed by @lkollar. (gh issue #544, gh pr #548) |
| 158 | - Added requirements-dev.txt for test dependency management (gh pr #499, #516) |
| 159 | - Fixed code coverage metrics to account for Windows builds (gh pr #526) |
| 160 | - Fixed code coverage metrics to NOT count xfails. Fixed by @gaborbernat |
| 161 | (gh issue #519, gh pr #563) |
| 162 | - Style improvement to zoneinfo.tzfile that was confusing to static type |
| 163 | checkers. Reported and fixed by @quodlibetor (gh pr #485) |
| 164 | - Several unused imports were removed by @jdufresne. (gh pr #486) |
Paul Ganssle | 187b69d | 2018-04-24 19:25:46 -0400 | [diff] [blame] | 165 | - Switched ``isinstance(*, collections.Callable)`` to callable, which is available |
Paul Ganssle | b8c60c3 | 2018-03-11 14:57:53 -0400 | [diff] [blame] | 166 | on all supported Python versions. Implemented by @jdufresne (gh pr #612) |
| 167 | - Added CONTRIBUTING.md (gh pr #533) |
| 168 | - Added AUTHORS.md (gh pr #542) |
| 169 | - Corrected setup.py metadata to reflect author vs. maintainer, (gh issue #477, |
| 170 | gh pr #538) |
| 171 | - Corrected README to reflect that tests are now run in pytest. Reported and |
| 172 | fixed by @m-dz (gh issue #556, gh pr #557) |
| 173 | - Updated all references to RFC 2445 (iCalendar) to point to RFC 5545. Fixed |
| 174 | by @mariocj89 (gh issue #543, gh pr #555) |
| 175 | - Corrected parse documentation to reflect proper integer offset units, |
| 176 | reported and fixed by @abrugh (gh pr #458) |
| 177 | - Fixed dangling parenthesis in tzoffset documentation (gh pr #461) |
| 178 | - Started including the license file in wheels. Reported and fixed by |
| 179 | @jdufresne (gh pr #476) |
| 180 | - Indendation fixes to parser docstring by @jbrockmendel (gh pr #492) |
| 181 | - Moved many examples from the "examples" documentation into their appropriate |
| 182 | module documentation pages. Fixed by @Tomasz-Kluczkowski and @jakec-github |
| 183 | (gh pr #558, #561) |
| 184 | - Fixed documentation so that the parser.isoparse documentation displays. |
| 185 | Fixed by @alexchamberlain (gh issue #545, gh pr #560) |
| 186 | - Refactored build and release sections and added setup instructions to |
| 187 | CONTRIBUTING. Reported and fixed by @kynan (gh pr #562) |
| 188 | - Cleaned up various dead links in the documentation. (gh pr #602, #608, #618) |
Jon Dufresne | 2e7b4c2 | 2017-04-16 21:40:56 -0700 | [diff] [blame] | 189 | |
Paul Ganssle | 9862bfe | 2017-07-10 14:01:28 -0400 | [diff] [blame] | 190 | Version 2.6.1 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 191 | ============= |
Paul Ganssle | 9862bfe | 2017-07-10 14:01:28 -0400 | [diff] [blame] | 192 | - Updated zoneinfo file to 2017b. (gh pr #395) |
| 193 | - Added Python 3.6 to CI testing (gh pr #365) |
| 194 | - Removed duplicate test name that was preventing a test from being run. |
| 195 | Reported and fixed by @jdufresne (gh pr #371) |
| 196 | - Fixed testing of folds and gaps, particularly on Windows (gh pr #392) |
| 197 | - Fixed deprecated escape characters in regular expressions. Reported by |
| 198 | @nascheme and @thierryba (gh issue #361), fixed by @thierryba (gh pr #358) |
| 199 | - Many PEP8 style violations and other code smells were fixed by @jdufresne |
| 200 | (gh prs #358, #363, #364, #366, #367, #368, #372, #374, #379, #380, #398) |
| 201 | - Improved performance of tzutc and tzoffset objects. (gh pr #391) |
| 202 | - Fixed issue with several time zone classes around DST transitions in any |
| 203 | zones with +0 standard offset (e.g. Europe/London) (gh issue #321, pr #390) |
| 204 | - Fixed issue with fuzzy parsing where tokens similar to AM/PM that are in the |
| 205 | end skipped were dropped in the fuzzy_with_tokens list. Reported and fixed |
| 206 | by @jbrockmendel (gh pr #332). |
| 207 | - Fixed issue with parsing dates of the form X m YY. Reported by @jbrockmendel. |
| 208 | (gh issue #333, pr #393) |
| 209 | - Added support for parser weekdays with less than 3 characters. Reported by |
| 210 | @arcadefoam (gh issue #343), fixed by @jonemo (gh pr #382) |
| 211 | - Fixed issue with the addition and subtraction of certain relativedeltas. |
| 212 | Reported and fixed by @kootenpv (gh issue #346, pr #347) |
| 213 | - Fixed issue where the COUNT parameter of rrules was ignored if 0. Fixed by |
| 214 | @mshenfield (gh pr #330), reported by @vaultah (gh issue #329). |
| 215 | - Updated documentation to include the new tz methods. (gh pr #324) |
| 216 | - Update documentation to reflect that the parser can raise TypeError, reported |
| 217 | and fixed by @tomchuk (gh issue #336, pr #337) |
| 218 | - Fixed an incorrect year in a parser doctest. Fixed by @xlotlu (gh pr #357) |
| 219 | - Moved version information into _version.py and set up the versions more |
| 220 | granularly. |
| 221 | |
Paul Ganssle | 418b8ae | 2016-11-06 20:54:45 -0500 | [diff] [blame] | 222 | Version 2.6.0 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 223 | ============= |
Paul Ganssle | 418b8ae | 2016-11-06 20:54:45 -0500 | [diff] [blame] | 224 | - Added PEP-495-compatible methods to address ambiguous and imaginary dates in |
| 225 | time zones in a backwards-compatible way. Ambiguous dates and times can now |
| 226 | be safely represented by all dateutil time zones. Many thanks to Alexander |
| 227 | Belopolski (@abalkin) and Tim Peters @tim-one for their inputs on how to |
| 228 | address this. Original issues reported by Yupeng and @zed (lP: 1390262, |
| 229 | gh issues #57, #112, #249, #284, #286, prs #127, #225, #248, #264, #302). |
| 230 | - Added new methods for working with ambiguous and imaginary dates to the tz |
| 231 | module. datetime_ambiguous() determines if a datetime is ambiguous for a given |
| 232 | zone and datetime_exists() determines if a datetime exists in a given zone. |
| 233 | This works for all fold-aware datetimes, not just those provided by dateutil. |
| 234 | (gh issue #253, gh pr #302) |
| 235 | - Fixed an issue where dst() in Portugal in 1996 was returning the wrong value |
| 236 | in tz.tzfile objects. Reported by @abalkin (gh issue #128, pr #225) |
| 237 | - Fixed an issue where zoneinfo.ZoneInfoFile errors were not being properly |
| 238 | deep-copied. (gh issue #226, pr #225) |
| 239 | - Refactored tzwin and tzrange as a subclass of a common class, tzrangebase, as |
| 240 | there was substantial overlapping functionality. As part of this change, |
| 241 | tzrange and tzstr now expose a transitions() function, which returns the |
| 242 | DST on and off transitions for a given year. (gh issue #260, pr #302) |
| 243 | - Deprecated zoneinfo.gettz() due to confusion with tz.gettz(), in favor of |
| 244 | get() method of zoneinfo.ZoneInfoFile objects. (gh issue #11, pr #310) |
| 245 | - For non-character, non-stream arguments, parser.parse now raises TypeError |
| 246 | instead of AttributeError. (gh issues #171, #269, pr #247) |
| 247 | - Fixed an issue where tzfile objects were not properly handling dst() and |
| 248 | tzname() when attached to datetime.time objects. Reported by @ovacephaloid. |
| 249 | (gh issue #292, pr #309) |
| 250 | - /usr/share/lib/zoneinfo was added to TZPATHS for compatibility with Solaris |
| 251 | systems. Reported by @dhduvall (gh issue #276, pr #307) |
| 252 | - tzoffset and tzrange objects now accept either a number of seconds or a |
| 253 | datetime.timedelta() object wherever previously only a number of seconds was |
| 254 | allowed. (gh pr #264, #277) |
| 255 | - datetime.timedelta objects can now be added to relativedelta objects. Reported |
| 256 | and added by Alec Nikolas Reiter (@justanr) (gh issue #282, pr #283 |
| 257 | - Refactored relativedelta.weekday and rrule.weekday into a common base class |
| 258 | to reduce code duplication. (gh issue #140, pr #311) |
| 259 | - An issue where the WKST parameter was improperly rendering in str(rrule) was |
| 260 | reported and fixed by Daniel LePage (@dplepage). (gh issue #262, pr #263) |
| 261 | - A replace() method has been added to rrule objects by @jendas1, which creates |
| 262 | new rrule with modified attributes, analogous to datetime.replace (gh pr #167) |
| 263 | - Made some significant performance improvements to rrule objects in Python 2.x |
| 264 | (gh pr #245) |
| 265 | - All classes defining equality functions now return NotImplemented when |
| 266 | compared to unsupported classes, rather than raising TypeError, to allow other |
| 267 | classes to provide fallback support. (gh pr #236) |
| 268 | - Several classes have been marked as explicitly unhashable to maintain |
Jon Dufresne | 38232aa | 2017-04-16 22:03:43 -0700 | [diff] [blame] | 269 | identical behavior between Python 2 and 3. Submitted by Roy Williams |
Paul Ganssle | 418b8ae | 2016-11-06 20:54:45 -0500 | [diff] [blame] | 270 | (@rowillia) (gh pr #296) |
| 271 | - Trailing whitespace in easter.py has been removed. Submitted by @OmgImAlexis |
| 272 | (gh pr #299) |
| 273 | - Windows-only batch files in build scripts had line endings switched to CRLF. |
| 274 | (gh pr #237) |
| 275 | - @adamchainz updated the documentation links to reflect that the canonical |
| 276 | location for readthedocs links is now at .io, not .org. (gh pr #272) |
| 277 | - Made some changes to the CI and codecov to test against newer versions of |
| 278 | Python and pypy, and to adjust the code coverage requirements. For the moment, |
| 279 | full pypy3 compatibility is not supported until a new release is available, |
| 280 | due to upstream bugs in the old version affecting PEP-495 support. |
| 281 | (gh prs #265, #266, #304, #308) |
| 282 | - The full PGP signing key fingerprint was added to the README.md in favor of |
| 283 | the previously used long-id. Reported by @valholl (gh issue #287, pr #304) |
| 284 | - Updated zoneinfo to 2016i. (gh issue #298, gh pr #306) |
| 285 | |
| 286 | |
Paul Ganssle | da1435e | 2016-04-20 21:07:52 -0400 | [diff] [blame] | 287 | Version 2.5.3 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 288 | ============= |
Paul Ganssle | da1435e | 2016-04-20 21:07:52 -0400 | [diff] [blame] | 289 | - Updated zoneinfo to 2016d |
| 290 | - Fixed parser bug where unambiguous datetimes fail to parse when dayfirst is |
| 291 | set to true. (gh issue #233, pr #234) |
| 292 | - Bug in zoneinfo file on platforms such as Google App Engine which do not |
| 293 | do not allow importing of subprocess.check_call was reported and fixed by |
| 294 | @savraj (gh issue #239, gh pr #240) |
| 295 | - Fixed incorrect version in documentation (gh issue #235, pr #243) |
| 296 | |
Paul Ganssle | c778dd1 | 2016-03-27 11:47:46 -0400 | [diff] [blame] | 297 | Version 2.5.2 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 298 | ============= |
Paul Ganssle | c778dd1 | 2016-03-27 11:47:46 -0400 | [diff] [blame] | 299 | - Updated zoneinfo to 2016c |
| 300 | - Fixed parser bug where yearfirst and dayfirst parameters were not being |
| 301 | respected when no separator was present. (gh issue #81 and #217, pr #229) |
| 302 | |
Paul Ganssle | 66f29ba | 2016-03-17 12:49:09 -0400 | [diff] [blame] | 303 | Version 2.5.1 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 304 | ============= |
Paul Ganssle | 66f29ba | 2016-03-17 12:49:09 -0400 | [diff] [blame] | 305 | - Updated zoneinfo to 2016b |
| 306 | - Changed MANIFEST.in to explicitly include test suite in source distributions, |
| 307 | with help from @koobs (gh issue #193, pr #194, #201, #221) |
| 308 | - Explicitly set all line-endings to LF, except for the NEWS file, on a |
| 309 | per-repository basis (gh pr #218) |
| 310 | - Fixed an issue with improper caching behavior in rruleset objects (gh issue |
| 311 | #104, pr #207) |
| 312 | - Changed to an explicit error when rrulestr strings contain a missing BYDAY |
| 313 | (gh issue #162, pr #211) |
| 314 | - tzfile now correctly handles files containing leapcnt (although the leapcnt |
| 315 | information is not actually used). Contributed by @hjoukl (gh issue #146, pr |
| 316 | #147) |
| 317 | - Fixed recursive import issue with tz module (gh pr #204) |
| 318 | - Added compatibility between tzwin objects and datetime.time objects (gh issue |
| 319 | #216, gh pr #219) |
| 320 | - Refactored monolithic test suite by module (gh issue #61, pr #200 and #206) |
| 321 | - Improved test coverage in the relativedelta module (gh pr #215) |
| 322 | - Adjusted documentation to reflect possibly counter-intuitive properties of |
| 323 | RFC-5545-compliant rrules, and other documentation improvements in the rrule |
| 324 | module (gh issue #105, gh issue #149 - pointer to the solution by @phep, |
| 325 | pr #213). |
| 326 | |
| 327 | |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 328 | Version 2.5.0 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 329 | ============= |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 330 | - Updated zoneinfo to 2016a |
| 331 | - zoneinfo_metadata file version increased to 2.0 - the updated updatezinfo.py |
| 332 | script will work with older zoneinfo_metadata.json files, but new metadata |
| 333 | files will not work with older updatezinfo.py versions. Additionally, we have |
| 334 | started hosting our own mirror of the Olson databases on a github pages |
| 335 | site (https://dateutil.github.io/tzdata/) (gh pr #183) |
| 336 | - dateutil zoneinfo tarballs now contain the full zoneinfo_metadata file used |
| 337 | to generate them. (gh issue #27, gh pr #85) |
| 338 | - relativedelta can now be safely subclassed without derived objects reverting |
| 339 | to base relativedelta objects as a result of arithmetic operations. |
| 340 | (lp:1010199, gh issue #44, pr #49) |
| 341 | - relativedelta 'weeks' parameter can now be set and retrieved as a property of |
| 342 | relativedelta instances. (lp: 727525, gh issue #45, pr #49) |
| 343 | - relativedelta now explicitly supports fractional relative weeks, days, hours, |
| 344 | minutes and seconds. Fractional values in absolute parameters (year, day, etc) |
| 345 | are now deprecated. (gh issue #40, pr #190) |
| 346 | - relativedelta objects previously did not use microseconds to determine of two |
| 347 | relativedelta objects were equal. This oversight has been corrected. |
| 348 | Contributed by @elprans (gh pr #113) |
| 349 | - rrule now has an xafter() method for retrieving multiple recurrences after a |
| 350 | specified date. (gh pr #38) |
| 351 | - str(rrule) now returns an RFC2445-compliant rrule string, contributed by |
| 352 | @schinckel and @armicron (lp:1406305, gh issue #47, prs #50, #62 and #160) |
| 353 | - rrule performance under certain conditions has been significantly improved |
| 354 | thanks to a patch contributed by @dekoza, based on an article by Brian Beck |
| 355 | (@exogen) (gh pr #136) |
| 356 | - The use of both the 'until' and 'count' parameters is now deprecated as |
| 357 | inconsistent with RFC2445 (gh pr #62, #185) |
| 358 | - Parsing an empty string will now raise a ValueError, rather than returning the |
| 359 | datetime passed to the 'default' parameter. (gh issue #78, pr #187) |
| 360 | - tzwinlocal objects now have a meaningful repr() and str() implementation |
| 361 | (gh issue #148, prs #184 and #186) |
| 362 | - Added equality logic for tzwin and tzwinlocal objects. (gh issue #151, |
| 363 | pr #180, #184) |
| 364 | - Added some flexibility in subclassing timelex, and switched the default |
| 365 | behavior over to using string methods rather than comparing against a fixed |
| 366 | list. (gh pr #122, #139) |
| 367 | - An issue causing tzstr() to crash on Python 2.x was fixed. (lp: 1331576, |
| 368 | gh issue #51, pr #55) |
| 369 | - An issue with string encoding causing exceptions under certain circumstances |
| 370 | when tzname() is called was fixed. (gh issue #60, #74, pr #75) |
| 371 | - Parser issue where calling parse() on dates with no day specified when the |
| 372 | day of the month in the default datetime (which is "today" if unspecified) is |
| 373 | greater than the number of days in the parsed month was fixed (this issue |
| 374 | tended to crop up between the 29th and 31st of the month, for obvious reasons) |
| 375 | (canonical gh issue #25, pr #30, #191) |
| 376 | - Fixed parser issue causing fuzzy_with_tokens to raise an unexpected exception |
| 377 | in certain circumstances. Contributed by @MichaelAquilina (gh pr #91) |
| 378 | - Fixed parser issue where years > 100 AD were incorrectly parsed. Contributed |
| 379 | by @Bachmann1234 (gh pr #130) |
| 380 | - Fixed parser issue where commas were not a valid separator between seconds |
| 381 | and microseconds, preventing parsing of ISO 8601 dates. Contributed by |
| 382 | @ryanss (gh issue #28, pr #106) |
| 383 | - Fixed issue with tzwin encoding in locales with non-Latin alphabets |
| 384 | (gh issue #92, pr #98) |
| 385 | - Fixed an issue where tzwin was not being properly imported on Windows. |
| 386 | Contributed by @labrys. (gh pr #134) |
| 387 | - Fixed a problem causing issues importing zoneinfo in certain circumstances. |
| 388 | Issue and solution contributed by @alexxv (gh issue #97, pr #99) |
| 389 | - Fixed an issue where dateutil timezones were not compatible with basic time |
| 390 | objects. One of many, many timezone related issues contributed and tested by |
| 391 | @labrys. (gh issue #132, pr #181) |
| 392 | - Fixed issue where tzwinlocal had an invalid utcoffset. (gh issue #135, |
| 393 | pr #141, #142) |
| 394 | - Fixed issue with tzwin and tzwinlocal where DST transitions were incorrectly |
| 395 | parsed from the registry. (gh issue #143, pr #178) |
| 396 | - updatezinfo.py no longer suppresses certain OSErrors. Contributed by @bjamesv |
| 397 | (gh pr #164) |
| 398 | - An issue that arose when timezone locale changes during runtime has been |
| 399 | fixed by @carlosxl and @mjschultz (gh issue #100, prs #107, #109) |
| 400 | - Python 3.5 was added to the supported platforms in the metadata (@tacaswell |
| 401 | gh pr #159) and the test suites (@moreati gh pr #117). |
| 402 | - An issue with tox failing without unittest2 installed in Python 2.6 was fixed |
| 403 | by @moreati (gh pr #115) |
| 404 | - Several deprecated functions were replaced in the tests by @moreati |
| 405 | (gh pr #116) |
| 406 | - Improved the logic in Travis and Appveyor to alleviate issues where builds |
| 407 | were failing due to connection issues when downloading the IANA timezone |
| 408 | files. In addition to adding our own mirror for the files (gh pr #183), the |
| 409 | download is now retried a number of times (with a delay) (gh pr #177) |
| 410 | - Many failing doctests were fixed by @moreati. (gh pr #120) |
| 411 | - Many fixes to the documentation (gh pr #103, gh pr #87 from @radarhere, |
| 412 | gh pr #154 from @gpoesia, gh pr #156 from @awsum, gh pr #168 from @ja8zyjits) |
| 413 | - Added a code coverage tool to the CI to help improve the library. (gh pr #182) |
| 414 | - We now have a mailing list - dateutil@python.org, graciously hosted by |
| 415 | Python.org. |
| 416 | |
| 417 | |
| 418 | Version 2.4.2 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 419 | ============= |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 420 | - Updated zoneinfo to 2015b. |
| 421 | - Fixed issue with parsing of tzstr on Python 2.7.x; tzstr will now be decoded |
| 422 | if not a unicode type. gh #51 (lp:1331576), gh pr #55. |
| 423 | - Fix a parser issue where AM and PM tokens were showing up in fuzzy date |
| 424 | stamps, triggering inappropriate errors. gh #56 (lp: 1428895), gh pr #63. |
| 425 | - Missing function "setcachesize" removed from zoneinfo __all__ list by @ryanss, |
| 426 | fixing an issue with wildcard imports of dateutil.zoneinfo. (gh pr #66). |
Jon Dufresne | e1d4eb2 | 2018-01-06 17:19:38 -0800 | [diff] [blame] | 427 | - (PyPI only) Fix an issue with source distributions not including the test |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 428 | suite. |
| 429 | |
| 430 | |
| 431 | Version 2.4.1 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 432 | ============= |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 433 | |
| 434 | - Added explicit check for valid hours if AM/PM is specified in parser. |
| 435 | (gh pr #22, issue #21) |
| 436 | - Fix bug in rrule introduced in 2.4.0 where byweekday parameter was not |
| 437 | handled properly. (gh pr #35, issue #34) |
| 438 | - Fix error where parser allowed some invalid dates, overwriting existing hours |
| 439 | with the last 2-digit number in the string. (gh pr #32, issue #31) |
| 440 | - Fix and add test for Python 2.x compatibility with boolean checking of |
| 441 | relativedelta objects. Implemented by @nimasmi (gh pr #43) and Cédric Krier |
| 442 | (lp: 1035038) |
| 443 | - Replaced parse() calls with explicit datetime objects in unit tests unrelated |
| 444 | to parser. (gh pr #36) |
| 445 | - Changed private _byxxx from sets to sorted tuples and fixed one currently |
| 446 | unreachable bug in _construct_byset. (gh pr #54) |
| 447 | - Additional documentation for parser (gh pr #29, #33, #41) and rrule. |
| 448 | - Formatting fixes to documentation of rrule and README.rst. |
| 449 | - Updated zoneinfo to 2015a. |
| 450 | |
| 451 | Version 2.4.0 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 452 | ============= |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 453 | |
| 454 | - Fix an issue with relativedelta and freezegun (lp:1374022) |
| 455 | - Fix tzinfo in windows for timezones without dst (lp:1010050, gh #2) |
| 456 | - Ignore missing timezones in windows like in POSIX |
| 457 | - Fix minimal version requirement for six (gh #6) |
| 458 | - Many rrule changes and fixes by @pganssle (gh pull requests #13 #14 #17), |
| 459 | including defusing some infinite loops (gh #4) |
| 460 | |
| 461 | Version 2.3 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 462 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 463 | |
| 464 | - Cleanup directory structure, moved test.py to dateutil/tests/test.py |
| 465 | |
| 466 | - Changed many aspects of dealing with the zone info file. Instead of a cache, |
| 467 | all the zones are loaded to memory, but symbolic links are loaded only once, |
| 468 | so not much memory is used. |
| 469 | |
| 470 | - The package is now zip-safe, and universal-wheelable, thanks to changes in |
| 471 | the handling of the zoneinfo file. |
| 472 | |
| 473 | - Fixed tzwin silently not imported on windows python2 |
| 474 | |
| 475 | - New maintainer, together with new hosting: GitHub, Travis, Read-The-Docs |
| 476 | |
| 477 | Version 2.2 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 478 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 479 | |
| 480 | - Updated zoneinfo to 2013h |
| 481 | |
| 482 | - fuzzy_with_tokens parse addon from Christopher Corley |
| 483 | |
| 484 | - Bug with LANG=C fixed by Mike Gilbert |
| 485 | |
| 486 | Version 2.1 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 487 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 488 | |
| 489 | - New maintainer |
| 490 | |
| 491 | - Dateutil now works on Python 2.6, 2.7 and 3.2 from same codebase (with six) |
| 492 | |
| 493 | - #704047: Ismael Carnales' patch for a new time format |
| 494 | |
| 495 | - Small bug fixes, thanks for reporters! |
| 496 | |
| 497 | |
| 498 | Version 2.0 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 499 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 500 | |
| 501 | - Ported to Python 3, by Brian Jones. If you need dateutil for Python 2.X, |
| 502 | please continue using the 1.X series. |
| 503 | |
| 504 | - There's no such thing as a "PSF License". This source code is now |
| 505 | made available under the Simplified BSD license. See LICENSE for |
| 506 | details. |
| 507 | |
| 508 | Version 1.5 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 509 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 510 | |
| 511 | - As reported by Mathieu Bridon, rrules were matching the bysecond rules |
| 512 | incorrectly against byminute in some circumstances when the SECONDLY |
| 513 | frequency was in use, due to a copy & paste bug. The problem has been |
| 514 | unittested and corrected. |
| 515 | |
| 516 | - Adam Ryan reported a problem in the relativedelta implementation which |
| 517 | affected the yearday parameter in the month of January specifically. |
| 518 | This has been unittested and fixed. |
| 519 | |
| 520 | - Updated timezone information. |
| 521 | |
| 522 | |
| 523 | Version 1.4.1 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 524 | ============= |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 525 | |
| 526 | - Updated timezone information. |
| 527 | |
| 528 | |
| 529 | Version 1.4 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 530 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 531 | |
| 532 | - Fixed another parser precision problem on conversion of decimal seconds |
| 533 | to microseconds, as reported by Erik Brown. Now these issues are gone |
| 534 | for real since it's not using floating point arithmetic anymore. |
| 535 | |
| 536 | - Fixed case where tzrange.utcoffset and tzrange.dst() might fail due |
| 537 | to a date being used where a datetime was expected (reported and fixed |
| 538 | by Lennart Regebro). |
| 539 | |
| 540 | - Prevent tzstr from introducing daylight timings in strings that didn't |
| 541 | specify them (reported by Lennart Regebro). |
| 542 | |
| 543 | - Calls like gettz("GMT+3") and gettz("UTC-2") will now return the |
| 544 | expected values, instead of the TZ variable behavior. |
| 545 | |
| 546 | - Fixed DST signal handling in zoneinfo files. Reported by |
| 547 | Nicholas F. Fabry and John-Mark Gurney. |
| 548 | |
| 549 | |
| 550 | Version 1.3 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 551 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 552 | |
| 553 | - Fixed precision problem on conversion of decimal seconds to |
| 554 | microseconds, as reported by Skip Montanaro. |
| 555 | |
| 556 | - Fixed bug in constructor of parser, and converted parser classes to |
| 557 | new-style classes. Original report and patch by Michael Elsdörfer. |
| 558 | |
| 559 | - Initialize tzid and comps in tz.py, to prevent the code from ever |
| 560 | raising a NameError (even with broken files). Johan Dahlin suggested |
| 561 | the fix after a pyflakes run. |
| 562 | |
| 563 | - Version is now published in dateutil.__version__, as requested |
| 564 | by Darren Dale. |
| 565 | |
| 566 | - All code is compatible with new-style division. |
| 567 | |
| 568 | |
| 569 | Version 1.2 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 570 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 571 | |
| 572 | - Now tzfile will round timezones to full-minutes if necessary, |
| 573 | since Python's datetime doesn't support sub-minute offsets. |
| 574 | Thanks to Ilpo Nyyssönen for reporting the issue. |
| 575 | |
| 576 | - Removed bare string exceptions, as reported and fixed by |
| 577 | Wilfredo Sánchez Vega. |
| 578 | |
| 579 | - Fix bug in leap count parsing (reported and fixed by Eugene Oden). |
| 580 | |
| 581 | |
| 582 | Version 1.1 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 583 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 584 | |
| 585 | - Fixed rrule byyearday handling. Abramo Bagnara pointed out that |
| 586 | RFC2445 allows negative numbers. |
| 587 | |
| 588 | - Fixed --prefix handling in setup.py (by Sidnei da Silva). |
| 589 | |
| 590 | - Now tz.gettz() returns a tzlocal instance when not given any |
| 591 | arguments and no other timezone information is found. |
| 592 | |
| 593 | - Updating timezone information to version 2005q. |
| 594 | |
| 595 | |
| 596 | Version 1.0 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 597 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 598 | |
| 599 | - Fixed parsing of XXhXXm formatted time after day/month/year |
| 600 | has been parsed. |
| 601 | |
| 602 | - Added patch by Jeffrey Harris optimizing rrule.__contains__. |
| 603 | |
| 604 | |
| 605 | Version 0.9 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 606 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 607 | |
| 608 | - Fixed pickling of timezone types, as reported by |
| 609 | Andreas Köhler. |
| 610 | |
| 611 | - Implemented internal timezone information with binary |
Paul Ganssle | 187b69d | 2018-04-24 19:25:46 -0400 | [diff] [blame] | 612 | timezone files. datautil.tz.gettz() function will now |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 613 | try to use the system timezone files, and fallback to |
| 614 | the internal versions. It's also possible to ask for |
| 615 | the internal versions directly by using |
| 616 | dateutil.zoneinfo.gettz(). |
| 617 | |
| 618 | - New tzwin timezone type, allowing access to Windows |
| 619 | internal timezones (contributed by Jeffrey Harris). |
| 620 | |
| 621 | - Fixed parsing of unicode date strings. |
| 622 | |
| 623 | - Accept parserinfo instances as the parser constructor |
| 624 | parameter, besides parserinfo (sub)classes. |
| 625 | |
| 626 | - Changed weekday to spell the not-set n value as None |
| 627 | instead of 0. |
| 628 | |
| 629 | - Fixed other reported bugs. |
| 630 | |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 631 | |
| 632 | Version 0.5 |
Paul Ganssle | c0ea860 | 2018-03-24 14:31:12 -0400 | [diff] [blame] | 633 | =========== |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 634 | |
Paul Ganssle | 187b69d | 2018-04-24 19:25:46 -0400 | [diff] [blame] | 635 | - Removed ``FREQ_`` prefix from rrule frequency constants |
Zbigniew Jędrzejewski-Szmek | 8ef3234 | 2016-02-28 20:05:09 -0500 | [diff] [blame] | 636 | WARNING: this breaks compatibility with previous versions. |
| 637 | |
| 638 | - Fixed rrule.between() for cases where "after" is achieved |
| 639 | before even starting, as reported by Andreas Köhler. |
| 640 | |
| 641 | - Fixed two digit zero-year parsing (such as 31-Dec-00), as |
| 642 | reported by Jim Abramson, and included test case for this. |
| 643 | |
| 644 | - Sort exdate and rdate before iterating over them, so that |
| 645 | it's not necessary to sort them before adding to the rruleset, |
| 646 | as reported by Nicholas Piper. |