blob: 118dc694cdc8eb27cda9ab9e3606366d6e079155 [file] [log] [blame]
Zbigniew Jędrzejewski-Szmek8ef32342016-02-28 20:05:09 -05001Version 2.5.0
2-------------
3- Updated zoneinfo to 2016a
4- zoneinfo_metadata file version increased to 2.0 - the updated updatezinfo.py
5 script will work with older zoneinfo_metadata.json files, but new metadata
6 files will not work with older updatezinfo.py versions. Additionally, we have
7 started hosting our own mirror of the Olson databases on a github pages
8 site (https://dateutil.github.io/tzdata/) (gh pr #183)
9- dateutil zoneinfo tarballs now contain the full zoneinfo_metadata file used
10 to generate them. (gh issue #27, gh pr #85)
11- relativedelta can now be safely subclassed without derived objects reverting
12 to base relativedelta objects as a result of arithmetic operations.
13 (lp:1010199, gh issue #44, pr #49)
14- relativedelta 'weeks' parameter can now be set and retrieved as a property of
15 relativedelta instances. (lp: 727525, gh issue #45, pr #49)
16- relativedelta now explicitly supports fractional relative weeks, days, hours,
17 minutes and seconds. Fractional values in absolute parameters (year, day, etc)
18 are now deprecated. (gh issue #40, pr #190)
19- relativedelta objects previously did not use microseconds to determine of two
20 relativedelta objects were equal. This oversight has been corrected.
21 Contributed by @elprans (gh pr #113)
22- rrule now has an xafter() method for retrieving multiple recurrences after a
23 specified date. (gh pr #38)
24- str(rrule) now returns an RFC2445-compliant rrule string, contributed by
25 @schinckel and @armicron (lp:1406305, gh issue #47, prs #50, #62 and #160)
26- rrule performance under certain conditions has been significantly improved
27 thanks to a patch contributed by @dekoza, based on an article by Brian Beck
28 (@exogen) (gh pr #136)
29- The use of both the 'until' and 'count' parameters is now deprecated as
30 inconsistent with RFC2445 (gh pr #62, #185)
31- Parsing an empty string will now raise a ValueError, rather than returning the
32 datetime passed to the 'default' parameter. (gh issue #78, pr #187)
33- tzwinlocal objects now have a meaningful repr() and str() implementation
34 (gh issue #148, prs #184 and #186)
35- Added equality logic for tzwin and tzwinlocal objects. (gh issue #151,
36 pr #180, #184)
37- Added some flexibility in subclassing timelex, and switched the default
38 behavior over to using string methods rather than comparing against a fixed
39 list. (gh pr #122, #139)
40- An issue causing tzstr() to crash on Python 2.x was fixed. (lp: 1331576,
41 gh issue #51, pr #55)
42- An issue with string encoding causing exceptions under certain circumstances
43 when tzname() is called was fixed. (gh issue #60, #74, pr #75)
44- Parser issue where calling parse() on dates with no day specified when the
45 day of the month in the default datetime (which is "today" if unspecified) is
46 greater than the number of days in the parsed month was fixed (this issue
47 tended to crop up between the 29th and 31st of the month, for obvious reasons)
48 (canonical gh issue #25, pr #30, #191)
49- Fixed parser issue causing fuzzy_with_tokens to raise an unexpected exception
50 in certain circumstances. Contributed by @MichaelAquilina (gh pr #91)
51- Fixed parser issue where years > 100 AD were incorrectly parsed. Contributed
52 by @Bachmann1234 (gh pr #130)
53- Fixed parser issue where commas were not a valid separator between seconds
54 and microseconds, preventing parsing of ISO 8601 dates. Contributed by
55 @ryanss (gh issue #28, pr #106)
56- Fixed issue with tzwin encoding in locales with non-Latin alphabets
57 (gh issue #92, pr #98)
58- Fixed an issue where tzwin was not being properly imported on Windows.
59 Contributed by @labrys. (gh pr #134)
60- Fixed a problem causing issues importing zoneinfo in certain circumstances.
61 Issue and solution contributed by @alexxv (gh issue #97, pr #99)
62- Fixed an issue where dateutil timezones were not compatible with basic time
63 objects. One of many, many timezone related issues contributed and tested by
64 @labrys. (gh issue #132, pr #181)
65- Fixed issue where tzwinlocal had an invalid utcoffset. (gh issue #135,
66 pr #141, #142)
67- Fixed issue with tzwin and tzwinlocal where DST transitions were incorrectly
68 parsed from the registry. (gh issue #143, pr #178)
69- updatezinfo.py no longer suppresses certain OSErrors. Contributed by @bjamesv
70 (gh pr #164)
71- An issue that arose when timezone locale changes during runtime has been
72 fixed by @carlosxl and @mjschultz (gh issue #100, prs #107, #109)
73- Python 3.5 was added to the supported platforms in the metadata (@tacaswell
74 gh pr #159) and the test suites (@moreati gh pr #117).
75- An issue with tox failing without unittest2 installed in Python 2.6 was fixed
76 by @moreati (gh pr #115)
77- Several deprecated functions were replaced in the tests by @moreati
78 (gh pr #116)
79- Improved the logic in Travis and Appveyor to alleviate issues where builds
80 were failing due to connection issues when downloading the IANA timezone
81 files. In addition to adding our own mirror for the files (gh pr #183), the
82 download is now retried a number of times (with a delay) (gh pr #177)
83- Many failing doctests were fixed by @moreati. (gh pr #120)
84- Many fixes to the documentation (gh pr #103, gh pr #87 from @radarhere,
85 gh pr #154 from @gpoesia, gh pr #156 from @awsum, gh pr #168 from @ja8zyjits)
86- Added a code coverage tool to the CI to help improve the library. (gh pr #182)
87- We now have a mailing list - dateutil@python.org, graciously hosted by
88 Python.org.
89
90
91Version 2.4.2
92-------------
93- Updated zoneinfo to 2015b.
94- Fixed issue with parsing of tzstr on Python 2.7.x; tzstr will now be decoded
95 if not a unicode type. gh #51 (lp:1331576), gh pr #55.
96- Fix a parser issue where AM and PM tokens were showing up in fuzzy date
97 stamps, triggering inappropriate errors. gh #56 (lp: 1428895), gh pr #63.
98- Missing function "setcachesize" removed from zoneinfo __all__ list by @ryanss,
99 fixing an issue with wildcard imports of dateutil.zoneinfo. (gh pr #66).
100- (PyPi only) Fix an issue with source distributions not including the test
101 suite.
102
103
104Version 2.4.1
105-------------
106
107- Added explicit check for valid hours if AM/PM is specified in parser.
108 (gh pr #22, issue #21)
109- Fix bug in rrule introduced in 2.4.0 where byweekday parameter was not
110 handled properly. (gh pr #35, issue #34)
111- Fix error where parser allowed some invalid dates, overwriting existing hours
112 with the last 2-digit number in the string. (gh pr #32, issue #31)
113- Fix and add test for Python 2.x compatibility with boolean checking of
114 relativedelta objects. Implemented by @nimasmi (gh pr #43) and Cédric Krier
115 (lp: 1035038)
116- Replaced parse() calls with explicit datetime objects in unit tests unrelated
117 to parser. (gh pr #36)
118- Changed private _byxxx from sets to sorted tuples and fixed one currently
119 unreachable bug in _construct_byset. (gh pr #54)
120- Additional documentation for parser (gh pr #29, #33, #41) and rrule.
121- Formatting fixes to documentation of rrule and README.rst.
122- Updated zoneinfo to 2015a.
123
124Version 2.4.0
125-------------
126
127- Fix an issue with relativedelta and freezegun (lp:1374022)
128- Fix tzinfo in windows for timezones without dst (lp:1010050, gh #2)
129- Ignore missing timezones in windows like in POSIX
130- Fix minimal version requirement for six (gh #6)
131- Many rrule changes and fixes by @pganssle (gh pull requests #13 #14 #17),
132 including defusing some infinite loops (gh #4)
133
134Version 2.3
135-----------
136
137- Cleanup directory structure, moved test.py to dateutil/tests/test.py
138
139- Changed many aspects of dealing with the zone info file. Instead of a cache,
140 all the zones are loaded to memory, but symbolic links are loaded only once,
141 so not much memory is used.
142
143- The package is now zip-safe, and universal-wheelable, thanks to changes in
144 the handling of the zoneinfo file.
145
146- Fixed tzwin silently not imported on windows python2
147
148- New maintainer, together with new hosting: GitHub, Travis, Read-The-Docs
149
150Version 2.2
151-----------
152
153- Updated zoneinfo to 2013h
154
155- fuzzy_with_tokens parse addon from Christopher Corley
156
157- Bug with LANG=C fixed by Mike Gilbert
158
159Version 2.1
160-----------
161
162- New maintainer
163
164- Dateutil now works on Python 2.6, 2.7 and 3.2 from same codebase (with six)
165
166- #704047: Ismael Carnales' patch for a new time format
167
168- Small bug fixes, thanks for reporters!
169
170
171Version 2.0
172-----------
173
174- Ported to Python 3, by Brian Jones. If you need dateutil for Python 2.X,
175 please continue using the 1.X series.
176
177- There's no such thing as a "PSF License". This source code is now
178 made available under the Simplified BSD license. See LICENSE for
179 details.
180
181Version 1.5
182-----------
183
184- As reported by Mathieu Bridon, rrules were matching the bysecond rules
185 incorrectly against byminute in some circumstances when the SECONDLY
186 frequency was in use, due to a copy & paste bug. The problem has been
187 unittested and corrected.
188
189- Adam Ryan reported a problem in the relativedelta implementation which
190 affected the yearday parameter in the month of January specifically.
191 This has been unittested and fixed.
192
193- Updated timezone information.
194
195
196Version 1.4.1
197-------------
198
199- Updated timezone information.
200
201
202Version 1.4
203-----------
204
205- Fixed another parser precision problem on conversion of decimal seconds
206 to microseconds, as reported by Erik Brown. Now these issues are gone
207 for real since it's not using floating point arithmetic anymore.
208
209- Fixed case where tzrange.utcoffset and tzrange.dst() might fail due
210 to a date being used where a datetime was expected (reported and fixed
211 by Lennart Regebro).
212
213- Prevent tzstr from introducing daylight timings in strings that didn't
214 specify them (reported by Lennart Regebro).
215
216- Calls like gettz("GMT+3") and gettz("UTC-2") will now return the
217 expected values, instead of the TZ variable behavior.
218
219- Fixed DST signal handling in zoneinfo files. Reported by
220 Nicholas F. Fabry and John-Mark Gurney.
221
222
223Version 1.3
224-----------
225
226- Fixed precision problem on conversion of decimal seconds to
227 microseconds, as reported by Skip Montanaro.
228
229- Fixed bug in constructor of parser, and converted parser classes to
230 new-style classes. Original report and patch by Michael Elsdörfer.
231
232- Initialize tzid and comps in tz.py, to prevent the code from ever
233 raising a NameError (even with broken files). Johan Dahlin suggested
234 the fix after a pyflakes run.
235
236- Version is now published in dateutil.__version__, as requested
237 by Darren Dale.
238
239- All code is compatible with new-style division.
240
241
242Version 1.2
243-----------
244
245- Now tzfile will round timezones to full-minutes if necessary,
246 since Python's datetime doesn't support sub-minute offsets.
247 Thanks to Ilpo Nyyssönen for reporting the issue.
248
249- Removed bare string exceptions, as reported and fixed by
250 Wilfredo Sánchez Vega.
251
252- Fix bug in leap count parsing (reported and fixed by Eugene Oden).
253
254
255Version 1.1
256-----------
257
258- Fixed rrule byyearday handling. Abramo Bagnara pointed out that
259 RFC2445 allows negative numbers.
260
261- Fixed --prefix handling in setup.py (by Sidnei da Silva).
262
263- Now tz.gettz() returns a tzlocal instance when not given any
264 arguments and no other timezone information is found.
265
266- Updating timezone information to version 2005q.
267
268
269Version 1.0
270-----------
271
272- Fixed parsing of XXhXXm formatted time after day/month/year
273 has been parsed.
274
275- Added patch by Jeffrey Harris optimizing rrule.__contains__.
276
277
278Version 0.9
279-----------
280
281- Fixed pickling of timezone types, as reported by
282 Andreas Köhler.
283
284- Implemented internal timezone information with binary
285 timezone files [1]. datautil.tz.gettz() function will now
286 try to use the system timezone files, and fallback to
287 the internal versions. It's also possible to ask for
288 the internal versions directly by using
289 dateutil.zoneinfo.gettz().
290
291- New tzwin timezone type, allowing access to Windows
292 internal timezones (contributed by Jeffrey Harris).
293
294- Fixed parsing of unicode date strings.
295
296- Accept parserinfo instances as the parser constructor
297 parameter, besides parserinfo (sub)classes.
298
299- Changed weekday to spell the not-set n value as None
300 instead of 0.
301
302- Fixed other reported bugs.
303
304[1] http://www.twinsun.com/tz/tz-link.htm
305
306
307Version 0.5
308-----------
309
310- Removed FREQ_ prefix from rrule frequency constants
311 WARNING: this breaks compatibility with previous versions.
312
313- Fixed rrule.between() for cases where "after" is achieved
314 before even starting, as reported by Andreas Köhler.
315
316- Fixed two digit zero-year parsing (such as 31-Dec-00), as
317 reported by Jim Abramson, and included test case for this.
318
319- Sort exdate and rdate before iterating over them, so that
320 it's not necessary to sort them before adding to the rruleset,
321 as reported by Nicholas Piper.