icalendar/CHANGES.rst

616 wiersze
15 KiB
ReStructuredText
Czysty Zwykły widok Historia

Changelog
=========
2017-02-15 11:37:39 +00:00
3.11.4 (unreleased)
-------------------
Breaking changes:
- *add item here*
New features:
- *add item here*
Bug fixes:
- *add item here*
2017-02-15 11:37:19 +00:00
3.11.3 (2017-02-15)
2017-01-12 16:34:09 +00:00
-------------------
Bug fixes:
2017-01-12 16:34:09 +00:00
- Removed ``setuptools`` as a dependency as it was only required by setup.py
and not by the package.
2017-01-12 16:34:09 +00:00
- Don't split content lines on the unicode ``LINE SEPARATOR`` character
``\u2028`` but only on ``CRLF`` or ``LF``.
2017-01-12 16:34:09 +00:00
2017-01-12 16:33:22 +00:00
3.11.2 (2017-01-12)
2016-12-19 17:03:18 +00:00
-------------------
Bug fixes:
2017-01-12 16:32:51 +00:00
- Run tests with python 3.5 and 3.6.
[geier]
2017-01-12 16:32:51 +00:00
- Allow tests failing with pypy3 on travis.ci.
[geier]
2016-12-19 17:03:18 +00:00
2016-12-19 17:03:04 +00:00
3.11.1 (2016-12-19)
2016-11-18 19:13:51 +00:00
-------------------
Bug fixes:
- Encode error message before adding it to the stack of collected error messages.
2016-11-18 19:13:51 +00:00
2016-11-18 19:13:07 +00:00
3.11 (2016-11-18)
2016-05-26 09:23:54 +00:00
-----------------
Fixes:
- Successfully test with pypy and pypy3. [gforcada]
- Minor documentation update. [tpltnt]
2016-05-26 09:23:54 +00:00
2016-05-26 09:23:10 +00:00
3.10 (2016-05-26)
2016-05-26 09:18:05 +00:00
-----------------
2016-02-05 12:24:47 +00:00
New:
- Updated components description to better comply with RFC 5545.
2016-05-26 09:14:36 +00:00
Refs #183.
[stlaz]
- Added PERIOD value type to date types.
Also fixes incompatibilities described in #184.
Refs #189.
[stlaz]
2016-02-05 12:24:47 +00:00
Fixes:
2016-05-26 09:14:36 +00:00
- Fix testsuite for use with ``dateutil>=2.5``.
Refs #195.
[untitaker]
- Reintroduce cal.Component.is_broken that was removed with 3.9.2.
Refs #185.
[geier]
2016-02-05 12:24:47 +00:00
2016-02-05 12:19:00 +00:00
3.9.2 (2016-02-05)
2015-09-08 14:08:23 +00:00
------------------
New:
2016-02-05 12:15:51 +00:00
- Defined ``test_suite`` in setup.py.
Now tests can be run via ``python setup.py test``.
[geier]
Fixes:
2016-02-05 12:06:19 +00:00
- Fixed cal.Component.from_ical() representing an unknown component as one of the known.
[stlaz]
2016-02-05 12:06:19 +00:00
- Fixed possible IndexError exception during parsing of an ical string.
[stlaz]
2016-02-05 11:47:34 +00:00
- When doing a boolean test on ``icalendar.cal.Component``, always return ``True``.
Before it was returning ``False`` due to CaselessDict, if it didn't contain any items.
[stlaz]
2016-02-05 11:47:34 +00:00
- Fixed date-time being recognized as date or time during parsing.
Added better error handling to parsing from ical strings.
[stlaz]
- Added __version__ attribute to init.py.
[TomTry]
- Documentation fixes.
[TomTry]
2015-09-08 14:08:23 +00:00
- Pep 8, UTF 8 headers, dict/list calls to literals.
2016-01-14 14:02:11 +00:00
[thet]
2015-09-08 14:08:23 +00:00
2015-09-08 14:07:50 +00:00
3.9.1 (2015-09-08)
2015-03-24 12:01:01 +00:00
------------------
2015-09-08 14:07:08 +00:00
- Fix ``vPeriod.__repr__``.
[spacekpe]
- Improve foldline() performance. This improves the foldline performance,
especially for large strings like base64-encoded inline attachements. In some
cases (1MB string) from 7 Minutes to less than 20ms for ASCII data and 500ms
for non-ASCII data. Ref: #163.
[emfree]
2015-03-24 12:01:01 +00:00
2015-03-24 12:00:01 +00:00
3.9.0 (2015-03-24)
2014-11-01 10:50:23 +00:00
------------------
2015-03-24 11:51:03 +00:00
- Creating timezone objects from VTIMEZONE components.
[geier]
- Make ``python-dateutil`` a dependency.
[geier]
2014-11-01 10:50:23 +00:00
- Made RRULE tolerant of trailing semicolons.
[sleeper]
2015-03-24 11:51:03 +00:00
- Documentation fixes.
[t-8ch, thet]
2014-11-01 10:50:23 +00:00
2014-11-01 10:49:37 +00:00
3.8.4 (2014-11-01)
------------------
2014-08-26 09:37:04 +00:00
2014-09-06 11:24:05 +00:00
- Add missing BYWEEKNO to recurrence rules.
[russkel]
2014-08-26 09:37:04 +00:00
2014-08-26 09:35:13 +00:00
3.8.3 (2014-08-26)
------------------
2014-07-22 10:13:21 +00:00
2014-08-21 20:21:07 +00:00
- PERCENT property in VTODO renamed to PERCENT-COMPLETE, according to RFC5545.
[thomascube]
2014-07-22 10:13:21 +00:00
2014-07-22 10:11:19 +00:00
3.8.2 (2014-07-22)
------------------
2014-07-17 14:36:33 +00:00
- Exclude editor backup files from egg distributions. Fixes #144.
[thet]
2014-07-17 14:36:33 +00:00
2014-07-17 14:35:01 +00:00
3.8.1 (2014-07-17)
------------------
2014-07-17 00:44:19 +00:00
2014-07-17 13:50:58 +00:00
- The representation of CaselessDicts in 3.8 changed the name attribute of
Components and therefore broke the external API. This has been fixed.
[untitaker]
2014-07-17 00:44:19 +00:00
2014-07-17 00:42:50 +00:00
3.8 (2014-07-17)
----------------
2014-07-17 00:42:50 +00:00
- Allow dots in property names (Needed for vCard compatibility). Refs #143.
2014-07-14 12:11:16 +00:00
[untitaker]
- Change class representation for CaselessDict objects to always include the
class name or the class' name attribute, if available. Also show
subcomponents for Component objects.
[thet]
2014-07-14 12:11:16 +00:00
- Don't use data_encode for CaselessDict class representation but use dict's
__repr__ method.
[t-8ch]
2014-07-17 00:42:50 +00:00
- Handle parameters with multiple values, which is needed for vCard 3.0.
2014-07-14 12:11:16 +00:00
Refs #142.
2014-07-14 09:58:38 +00:00
[t-8ch]
2014-06-02 21:38:45 +00:00
3.7 (2014-06-02)
2014-06-02 13:46:59 +00:00
----------------
2014-04-05 17:34:39 +00:00
2014-06-02 10:59:01 +00:00
- For components with ``ignore_exceptions`` set to ``True``, mark unparseable
lines as broken instead rising a ``ValueError``. ``VEVENT`` components have
2014-06-02 11:03:25 +00:00
``ignore_exceptions`` set to ``True`` by default. Ref #131. Fixes #104.
2014-06-02 10:59:01 +00:00
[jkiang13]
- Make ``python-dateutil`` a soft-dependency.
[boltnev]
2014-06-02 09:41:18 +00:00
- Add optional ``sorted`` parameter to ``Component.to_ical``. Setting it to
false allows the user to preserve the original property and parameter order.
2014-06-02 11:03:25 +00:00
Ref #136. Fixes #133.
2014-06-02 09:41:18 +00:00
[untitaker]
- Fix tests for latest ``pytz``. Don't set ``tzinfo`` directly on datetime
2014-06-02 11:03:25 +00:00
objects, but use pytz's ``localize`` function. Ref #138.
[untitaker, thet]
- Remove incorrect use of __all__. We don't encourage using ``from package
import *`` imports. Fixes #129.
[eric-wieser]
2014-04-05 17:34:39 +00:00
2014-04-05 17:34:03 +00:00
3.6.2 (2014-04-05)
------------------
- Pep8 and cleanup.
[lasudry]
2014-01-13 12:39:37 +00:00
3.6.1 (2014-01-13)
------------------
- Open text files referenced by setup.py as utf-8, no matter what the locale
settings are set to. Fixes #122.
[sochotnicky]
- Add tox.ini to source tarball, which simplifies testing for in distributions.
[sochotnicky]
2014-01-06 15:22:38 +00:00
3.6 (2014-01-06)
----------------
2013-09-03 20:21:54 +00:00
2014-01-06 15:17:26 +00:00
- Python3 (3.3+) + Python 2 (2.6+) support [geier]
- Made sure to_ical() always returns bytes [geier]
- Support adding lists to a component property, which value already was a list
2013-12-26 19:46:50 +00:00
and remove the Component.set method, which was only used by the add method.
[thet]
- Remove ability to add property parameters via a value's params attribute when
adding via cal.add (that was only possible for custom value objects and makes
up a strange API), but support a parameter attribute on cal.add's method
signature to pass a dictionary with property parameter key/value pairs.
Fixes #116.
[thet]
- Backport some of Regebro's changes from his regebro-refactor branch.
[thet]
- Raise explicit error on another malformed content line case.
[hajdbo]
2013-09-03 20:21:54 +00:00
- Correctly parse datetime component property values with timezone information
when parsed from ical strings.
[untitaker]
2013-07-03 12:26:31 +00:00
3.5 (2013-07-03)
----------------
- Let to_unicode be more graceful for non-unicode strings, as like CMFPlone's
safe_unicode does it.
[thet]
2013-04-24 10:20:17 +00:00
3.4 (2013-04-24)
2013-04-24 10:14:53 +00:00
----------------
2013-02-20 17:01:21 +00:00
2013-04-24 10:14:53 +00:00
- Switch to unicode internally. This should fix all en/decoding errors.
2013-03-20 18:38:51 +00:00
[thet]
2013-04-24 10:14:53 +00:00
- Support for non-ascii parameter values. Fixes #88.
[warvariuc]
- Added functions to transform chars in string with '\\' + any of r'\,;:' chars
into '%{:02X}' form to avoid splitting on chars escaped with '\\'.
[warvariuc]
- Allow seconds in vUTCOffset properties. Fixes #55.
[thet]
2013-03-28 11:07:49 +00:00
- Let ``Component.decode`` better handle vRecur and vDDDLists properties.
Fixes #70.
[thet]
- Don't let ``Component.add`` re-encode already encoded values. This simplifies
the API, since there is no need explicitly pass ``encode=False``. Fixes #82.
[thet]
- Rename tzinfo_from_dt to tzid_from_dt, which is what it does.
[thet]
- More support for dateutil parsed tzinfo objects. Fixes #89.
[leo-naeka]
2013-04-24 10:14:53 +00:00
- Remove python-dateutil version fix at all. Current python-dateutil has Py3
and Py2 compatibility.
2013-02-20 17:01:21 +00:00
[thet]
- Declare the required python-dateutil dependency in setup.py. Fixes #90.
[kleink]
2013-04-24 10:14:53 +00:00
- Raise test coverage.
[thet]
- Remove interfaces module, as it is unused.
[thet]
- Remove ``test_doctests.py``, test suite already created properly in
``test_icalendar.py``.
[rnix]
- Transformed doctests into unittests, Test fixes and cleanup.
[warvariuc]
2013-02-20 17:01:21 +00:00
2013-02-08 15:00:31 +00:00
3.3 (2013-02-08)
----------------
2013-01-21 15:12:26 +00:00
2013-03-19 11:43:46 +00:00
- Drop support for Python < 2.6.
2013-02-08 15:05:57 +00:00
[thet]
2013-03-19 11:43:46 +00:00
- Allow vGeo to be instantiated with list and not only tuples of geo
coordinates. Fixes #83.
[thet]
2013-03-19 11:43:46 +00:00
- Don't force to pass a list to vDDDLists and allow setting individual RDATE
and EXDATE values without having to wrap them in a list.
[thet]
2013-03-19 11:43:46 +00:00
- Fix encoding function to allow setting RDATE and EXDATE values and not to
have bypass encoding with an icalendar property.
[thet]
2013-03-19 11:43:46 +00:00
- Allow setting of timezone for vDDDLists and support timezone properties for
RDATE and EXDATE component properties.
[thet]
2013-03-19 11:43:46 +00:00
- Move setting of TZID properties to vDDDTypes, where it belongs to.
[thet]
2013-03-19 11:43:46 +00:00
- Use @staticmethod decorator instead of wrapper function.
2013-01-22 09:40:56 +00:00
[warvariuc, thet]
2016-11-18 19:13:07 +00:00
- Extend quoting of parameter values to all of those characters: ",;: ’'".
2013-01-22 09:40:56 +00:00
This fixes an outlook incompatibility with some characters. Fixes: #79,
Fixes: #81.
[warvariuc]
2013-03-19 11:43:46 +00:00
- Define VTIMETZONE subcomponents STANDARD and DAYLIGHT for RFC5545 compliance.
2013-01-21 15:12:26 +00:00
[thet]
2012-11-26 23:15:42 +00:00
3.2 (2012-11-27)
----------------
2013-03-19 11:43:46 +00:00
- Documentation file layout restructuring.
[thet]
2013-03-19 11:43:46 +00:00
- Fix time support. vTime events can be instantiated with a datetime.time
object, and do not inherit from datetime.time itself.
[rdunklau]
2013-03-19 11:43:46 +00:00
- Correctly handle tzinfo objects parsed with dateutil. Fixes #77.
[warvariuc, thet]
2013-03-19 11:43:46 +00:00
- Text values are escaped correclty. Fixes #74.
[warvariuc]
2013-03-19 11:43:46 +00:00
- Returned old folding algorithm, as the current implementation fails in some
cases. Fixes #72, Fixes #73.
[warvariuc]
2013-03-19 11:43:46 +00:00
- Supports to_ical() on date/time properties for dates prior to 1900.
[cdevienne]
2012-11-27 09:11:38 +00:00
3.1 (2012-09-05)
----------------
2013-03-19 11:43:46 +00:00
- Make sure parameters to certain properties propagate to the ical output.
[kanarip]
2013-03-19 11:43:46 +00:00
- Re-include doctests.
[rnix]
2013-03-19 11:43:46 +00:00
- Ensure correct datatype at instance creation time in ``prop.vCalAddress``
and ``prop.vText``.
[rnix]
2013-03-19 11:43:46 +00:00
- Apply TZID parameter to datetimes parsed from RECURRENCE-ID
[dbstovall]
2013-03-19 11:43:46 +00:00
- Localize datetimes for timezones to avoid DST transition errors.
[dbstovall]
2013-03-19 11:43:46 +00:00
- Allow UTC-OFFSET property value data types in seconds, which follows RFC5545
specification.
[nikolaeff]
2013-03-19 11:43:46 +00:00
- Remove utctz and normalized_timezone methods to simplify the codebase. The
methods were too tiny to be useful and just used at one place.
[thet]
2013-03-19 11:43:46 +00:00
- When using Component.add() to add icalendar properties, force a value
conversion to UTC for CREATED, DTSTART and LAST-MODIFIED. The RFC expects UTC
for those properties.
[thet]
2013-03-19 11:43:46 +00:00
- Removed last occurrences of old API (from_string).
[Rembane]
2013-03-19 11:43:46 +00:00
- Add 'recursive' argument to property_items() to switch recursive listing.
For example when parsing a text/calendar text including multiple components
(e.g. a VCALENDAR with 5 VEVENTs), the previous situation required us to look
over all properties in VEVENTs even if we just want the properties under the
VCALENDAR component (VERSION, PRODID, CALSCALE, METHOD).
[dmikurube]
2013-03-19 11:43:46 +00:00
- All unit tests fixed.
[mikaelfrykholm]
3.0.1b2 (2012-03-01)
--------------------
2013-03-19 11:43:46 +00:00
- For all TZID parameters in DATE-TIME properties, use timezone identifiers
(e.g. Europe/Vienna) instead of timezone names (e.g. CET), as required by
RFC5545. Timezone names are used together with timezone identifiers in the
Timezone components.
[thet]
2013-03-19 11:43:46 +00:00
- Timezone parsing, issues and test fixes.
[mikaelfrykholm, garbas, tgecho]
2013-03-19 11:43:46 +00:00
- Since we use pytz for timezones, also use UTC tzinfo object from the pytz
library instead of own implementation.
[thet]
3.0.1b1 (2012-02-24)
--------------------
2013-03-19 11:43:46 +00:00
- Update Release information.
[thet]
3.0
---
2013-03-19 11:43:46 +00:00
- Add API for proper Timezone support. Allow creating ical DATE-TIME strings
with timezone information from Python datetimes with pytz based timezone
information and vice versa.
[thet]
2013-03-19 11:43:46 +00:00
- Unify API to only use to_ical and from_ical and remove string casting as a
requirement for Python 3 compatibility:
New: to_ical.
Old: ical, string, as_string and string casting via __str__ and str.
New: from_ical.
Old: from_string.
[thet]
2.2 (2011-08-24)
----------------
2013-03-19 11:43:46 +00:00
- migration to https://github.com/collective/icalendar using svn2git preserving
tags, branches and authors.
[garbas]
2013-03-19 11:43:46 +00:00
- using tox for testing on python 2.4, 2.5, 2.6, 2.6.
[garbas]
2013-03-19 11:43:46 +00:00
- fixed tests so they pass also under python 2.7.
[garbas]
2013-03-19 11:43:46 +00:00
- running tests on https://jenkins.plone.org/job/icalendar (only 2.6 for now)
with some other metrics (pylint, clonedigger, coverage).
[garbas]
2013-03-19 11:43:46 +00:00
- review and merge changes from https://github.com/cozi/icalendar fork.
[garbas]
2013-03-19 11:43:46 +00:00
- created sphinx documentation and started documenting development and goals.
[garbas]
2013-03-19 11:43:46 +00:00
- hook out github repository to http://readthedocs.org service so sphinx
documentation is generated on each commit (for master). Documentation can be
visible on: http://readthedocs.org/docs/icalendar/en/latest/
[garbas]
2.1 (2009-12-14)
----------------
2013-03-19 11:43:46 +00:00
- Fix deprecation warnings about ``object.__init__`` taking no parameters.
2013-03-19 11:43:46 +00:00
- Set the VALUE parameter correctly for date values.
2013-03-19 11:43:46 +00:00
- Long binary data would be base64 encoded with newlines, which made the
iCalendar files incorrect. (This still needs testing).
2013-03-19 11:43:46 +00:00
- Correctly handle content lines which include newlines.
2.0.1 (2008-07-11)
------------------
2013-03-19 11:43:46 +00:00
- Made the tests run under Python 2.5+
2013-03-19 11:43:46 +00:00
- Renamed the UTC class to Utc, so it would not clash with the UTC object,
since that rendered the UTC object unpicklable.
2.0 (2008-07-11)
----------------
2013-03-19 11:43:46 +00:00
- EXDATE and RDATE now returns a vDDDLists object, which contains a list
of vDDDTypes objects. This is do that EXDATE and RDATE can contain
lists of dates, as per RFC.
***Note!***: This change is incompatible with earlier behavior, so if you
handle EXDATE and RDATE you will need to update your code.
2013-03-19 11:43:46 +00:00
- When createing a vDuration of -5 hours (which in itself is nonsensical),
the ical output of that was -P1DT19H, which is correct, but ugly. Now
it's '-PT5H', which is prettier.
1.2 (2006-11-25)
----------------
2013-03-19 11:43:46 +00:00
- Fixed a string index out of range error in the new folding code.
1.1 (2006-11-23)
----------------
2013-03-19 11:43:46 +00:00
- Fixed a bug in caselessdicts popitem. (thanks to Michael Smith
<msmith@fluendo.com>)
2013-03-19 11:43:46 +00:00
- The RFC 2445 was a bit unclear on how to handle line folding when it
happened to be in the middle of a UTF-8 character. This has been clarified
2013-03-15 15:34:42 +00:00
in the following discussion:
http://lists.osafoundation.org/pipermail/ietf-calsify/2006-August/001126.html
And this is now implemented in iCalendar. It will not fold in the middle of
a UTF-8 character, but may fold in the middle of a UTF-8 composing character
sequence.
1.0 (2006-08-03)
----------------
2013-03-19 11:43:46 +00:00
- make get_inline and set_inline support non ascii codes.
2013-03-19 11:43:46 +00:00
- Added support for creating a python egg distribution.
0.11 (2005-11-08)
-----------------
2013-03-19 11:43:46 +00:00
- Changed component .from_string to use types_factory instead of hardcoding
entries to 'inline'
2013-03-19 11:43:46 +00:00
- Changed UTC tzinfo to a singleton so the same one is used everywhere
2013-03-19 11:43:46 +00:00
- Made the parser more strict by using regular expressions for key name,
param name and quoted/unquoted safe char as per the RFC
2013-03-19 11:43:46 +00:00
- Added some tests from the schooltool icalendar parser for better coverage
2013-03-19 11:43:46 +00:00
- Be more forgiving on the regex for folding lines
2013-03-19 11:43:46 +00:00
- Allow for multiple top-level components on .from_string
2013-03-19 11:43:46 +00:00
- Fix vWeekdays, wasn't accepting relative param (eg: -3SA vs -SA)
2013-03-19 11:43:46 +00:00
- vDDDTypes didn't accept negative period (eg: -P30M)
2013-03-19 11:43:46 +00:00
- 'N' is also acceptable as newline on content lines, per RFC
0.10 (2005-04-28)
-----------------
2013-03-19 11:43:46 +00:00
- moved code to codespeak.net subversion.
2013-03-19 11:43:46 +00:00
- reorganized package structure so that source code is under 'src' directory.
Non-package files remain in distribution root.
2013-03-19 11:43:46 +00:00
- redid doc/.py files as doc/.txt, using more modern doctest. Before they
were .py files with big docstrings.
2013-03-19 11:43:46 +00:00
- added test.py testrunner, and tests/test_icalendar.py that picks up all
doctests in source code and doc directory, and runs them, when typing::
python2.3 test.py
2013-03-19 11:43:46 +00:00
- renamed iCalendar to lower case package name, lowercased, de-pluralized and
shorted module names, which are mostly implementation detail.
2013-03-19 11:43:46 +00:00
- changed tests so they generate .ics files in a temp directory, not in the
2013-03-15 15:34:42 +00:00
structure itself.