This file is indexed.

/usr/lib/python3/dist-packages/icalendar-3.8.egg-info/PKG-INFO is in python3-icalendar 3.8-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
Metadata-Version: 1.1
Name: icalendar
Version: 3.8
Summary: iCalendar parser/generator
Home-page: https://github.com/collective/icalendar
Author: Plone Foundation
Author-email: plone-developers@lists.sourceforge.net
License: BSD
Description: ==========================================================
        Internet Calendaring and Scheduling (iCalendar) for Python
        ==========================================================
        
        The `icalendar`_ package is a parser/generator of iCalendar files for use
        with Python.
        
        ----
        
            :Homepage: http://icalendar.readthedocs.org
            :Code: http://github.com/collective/icalendar
            :Mailing list: http://github.com/collective/icalendar/issues
            :Dependencies: `setuptools`_ and since version 3.0 we depend on `pytz`_.
            :Compatible with: Python 2.6, 2.7 and 3.3+
            :License: `BSD`_
        
        ----
        
        
        .. image:: https://travis-ci.org/collective/icalendar.svg?branch=master
            :target: https://travis-ci.org/collective/icalendar
        
        
        Roadmap
        =======
        
        - 4.0: API refactoring
        
        
        
        Changes in version 3.0
        ======================
        
        API Change
        ----------
        
        Since version we unified to icalendar de/serialization API to use only to_ical
        (for writing an ical string from the internal representation) and from_ical
        (for parsing an ical string into the internal representation).
        
        to_ical is now used instead of the methods ical, string, as_string and instead
        of string casting via __str__ and str.
        
        from_ical is now used instead of from_string.
        
        This change is a requirement for future Python 3 compatibility. Please update
        your code to reflect to the new API.
        
        Timezone support
        ----------------
        
        Timezones are now fully supported in icalendar for serialization and
        deserialization. We use the pytz library for timezone components of datetime
        instances. The timezone identifiers must be valid pytz respectively Olson
        database timezone identifiers. This can be a problem for 'GMT' identifiers,
        which are not defined in the Olson database.
        
        Instead of the own UTC tzinfo implementation we use pytz UTC tzinfo object now.
        
        
        About this fork which is not a fork anymore
        ===========================================
        
        Aim of this fork (not fork anymore, read further) was to bring this package up
        to date with latest icalendar `RFC`_ specification as part of
        `plone.app.event`_ project which goal is to bring recurrent evens to `Plone`_.
        
        After some thoughts we (Plone developers involved with `plone.app.event`_) send
        a suggestion to icalendar-dev@codespeak.net to take over mainaining of
        `icalendar`_. Nobody object and since version 2.2 we are back to development.
        
        .. _`icalendar`: http://pypi.python.org/pypi/icalendar
        .. _`plone.app.event`: http://github.com/plone/plone.app.event
        .. _`Plone`: http://plone.org
        .. _`pytz`: http://pypi.python.org/pypi/pytz
        .. _`setuptools`: http://pypi.python.org/pypi/setuptools
        .. _`RFC`: http://www.ietf.org/rfc/rfc5545.txt
        .. _`BSD`: https://github.com/collective/icalendar/issues/2
        
        
        Test Coverage Report
        ====================
        
        Output from coverage test::
        
            Name                         Stmts   Miss  Cover
            ------------------------------------------------
            src/icalendar/__init__           4      0   100%
            src/icalendar/cal              243      7    97%
            src/icalendar/caselessdict      66      7    89%
            src/icalendar/compat             1      0   100%
            src/icalendar/parser           192      6    97%
            src/icalendar/parser_tools      20      0   100%
            src/icalendar/prop             536     64    88%
            src/icalendar/tools             16      0   100%
            ------------------------------------------------
            TOTAL                         1078     84    92%
        
        Changelog
        =========
        
        3.8 (2014-07-17)
        ----------------
        
        - Allow dots in property names (Needed for vCard compatibility). Refs #143.
          [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]
        
        - Don't use data_encode for CaselessDict class representation but use dict's
          __repr__ method.
          [t-8ch]
        
        - Handle parameters with multiple values, which is needed for vCard 3.0.
          Refs #142.
          [t-8ch]
        
        
        3.7 (2014-06-02)
        ----------------
        
        - For components with ``ignore_exceptions`` set to ``True``, mark unparseable
          lines as broken instead rising a ``ValueError``. ``VEVENT`` components have
          ``ignore_exceptions`` set to ``True`` by default. Ref #131. Fixes #104.
          [jkiang13]
        
        - Make ``python-dateutil`` a soft-dependency.
          [boltnev]
        
        - Add optional ``sorted`` parameter to ``Component.to_ical``. Setting it to
          false allows the user to preserve the original property and parameter order.
          Ref #136. Fixes #133.
          [untitaker]
        
        - Fix tests for latest ``pytz``. Don't set ``tzinfo`` directly on datetime
          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]
        
        
        3.6.2 (2014-04-05)
        ------------------
        
        - Pep8 and cleanup.
          [lasudry]
        
        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]
        
        
        3.6 (2014-01-06)
        ----------------
        
        - 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
          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]
        
        - Correctly parse datetime component property values with timezone information
          when parsed from ical strings.
          [untitaker]
        
        
        3.5 (2013-07-03)
        ----------------
        
        - Let to_unicode be more graceful for non-unicode strings, as like CMFPlone's
          safe_unicode does it.
          [thet]
        
        
        3.4 (2013-04-24)
        ----------------
        
        - Switch to unicode internally. This should fix all en/decoding errors.
          [thet]
        
        - 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]
        
        - 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]
        
        - Remove python-dateutil version fix at all. Current python-dateutil has Py3
          and Py2 compatibility.
          [thet]
        
        - Declare the required python-dateutil dependency in setup.py. Fixes #90.
          [kleink]
        
        - 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]
        
        
        3.3 (2013-02-08)
        ----------------
        
        - Drop support for Python < 2.6.
          [thet]
        
        - Allow vGeo to be instantiated with list and not only tuples of geo
          coordinates. Fixes #83.
          [thet]
        
        - 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]
        
        - Fix encoding function to allow setting RDATE and EXDATE values and not to
          have bypass encoding with an icalendar property.
          [thet]
        
        - Allow setting of timezone for vDDDLists and support timezone properties for
          RDATE and EXDATE component properties.
          [thet]
        
        - Move setting of TZID properties to vDDDTypes, where it belongs to.
          [thet]
        
        - Use @staticmethod decorator instead of wrapper function.
          [warvariuc, thet]
        
        - Extend quoting of parameter values to all of those characters: ",;: ’'".
          This fixes an outlook incompatibility with some characters. Fixes: #79,
          Fixes: #81.
          [warvariuc]
        
        - Define VTIMETZONE subcomponents STANDARD and DAYLIGHT for RFC5545 compliance.
          [thet]
        
        
        3.2 (2012-11-27)
        ----------------
        
        - Documentation file layout restructuring.
          [thet]
        
        - Fix time support. vTime events can be instantiated with a datetime.time
          object, and do not inherit from datetime.time itself.
          [rdunklau]
        
        - Correctly handle tzinfo objects parsed with dateutil. Fixes #77.
          [warvariuc, thet]
        
        - Text values are escaped correclty. Fixes #74.
          [warvariuc]
        
        - Returned old folding algorithm, as the current implementation fails in some
          cases. Fixes #72, Fixes #73.
          [warvariuc]
        
        - Supports to_ical() on date/time properties for dates prior to 1900.
          [cdevienne]
        
        
        3.1 (2012-09-05)
        ----------------
        
        - Make sure parameters to certain properties propagate to the ical output.
          [kanarip]
        
        - Re-include doctests.
          [rnix]
        
        - Ensure correct datatype at instance creation time in ``prop.vCalAddress``
          and ``prop.vText``.
          [rnix]
        
        - Apply TZID parameter to datetimes parsed from RECURRENCE-ID
          [dbstovall]
        
        - Localize datetimes for timezones to avoid DST transition errors.
          [dbstovall]
        
        - Allow UTC-OFFSET property value data types in seconds, which follows RFC5545
          specification.
          [nikolaeff]
        
        - 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]
        
        - 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]
        
        - Removed last occurrences of old API (from_string).
          [Rembane]
        
        - 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]
        
        - All unit tests fixed.
          [mikaelfrykholm]
        
        
        3.0.1b2 (2012-03-01)
        --------------------
        
        - 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]
        
        - Timezone parsing, issues and test fixes.
          [mikaelfrykholm, garbas, tgecho]
        
        - 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)
        --------------------
        
        - Update Release information.
          [thet]
        
        
        3.0
        ---
        
        - 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]
        
        - 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)
        ----------------
        
        - migration to https://github.com/collective/icalendar using svn2git preserving
          tags, branches and authors.
          [garbas]
        
        - using tox for testing on python 2.4, 2.5, 2.6, 2.6.
          [garbas]
        
        - fixed tests so they pass also under python 2.7.
          [garbas]
        
        - running tests on https://jenkins.plone.org/job/icalendar (only 2.6 for now)
          with some other metrics (pylint, clonedigger, coverage).
          [garbas]
        
        - review and merge changes from https://github.com/cozi/icalendar fork.
          [garbas]
        
        - created sphinx documentation and started documenting development and goals.
          [garbas]
        
        - 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)
        ----------------
        
        - Fix deprecation warnings about ``object.__init__`` taking no parameters.
        
        - Set the VALUE parameter correctly for date values.
        
        - Long binary data would be base64 encoded with newlines, which made the
          iCalendar files incorrect. (This still needs testing).
        
        - Correctly handle content lines which include newlines.
        
        
        2.0.1 (2008-07-11)
        ------------------
        
        - Made the tests run under Python 2.5+
        
        - 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)
        ----------------
        
        - 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.
        
        - 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)
        ----------------
        
        - Fixed a string index out of range error in the new folding code.
        
        
        1.1 (2006-11-23)
        ----------------
        
        - Fixed a bug in caselessdicts popitem. (thanks to Michael Smith
          <msmith@fluendo.com>)
        
        - 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
          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)
        ----------------
        
        - make get_inline and set_inline support non ascii codes.
        
        - Added support for creating a python egg distribution.
        
        
        0.11 (2005-11-08)
        -----------------
        
        - Changed component .from_string to use types_factory instead of hardcoding
          entries to 'inline'
        
        - Changed UTC tzinfo to a singleton so the same one is used everywhere
        
        - Made the parser more strict by using regular expressions for key name,
          param name and quoted/unquoted safe char as per the RFC
        
        - Added some tests from the schooltool icalendar parser for better coverage
        
        - Be more forgiving on the regex for folding lines
        
        - Allow for multiple top-level components on .from_string
        
        - Fix vWeekdays, wasn't accepting relative param (eg: -3SA vs -SA)
        
        - vDDDTypes didn't accept negative period (eg: -P30M)
        
        - 'N' is also acceptable as newline on content lines, per RFC
        
        
        0.10 (2005-04-28)
        -----------------
        
        - moved code to codespeak.net subversion.
        
        - reorganized package structure so that source code is under 'src' directory.
          Non-package files remain in distribution root.
        
        - redid doc/.py files as doc/.txt, using more modern doctest. Before they
          were .py files with big docstrings.
        
        - 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
        
        - renamed iCalendar to lower case package name, lowercased, de-pluralized and
          shorted module names, which are mostly implementation detail.
        
        - changed tests so they generate .ics files in a temp directory, not in the
          structure itself.
        
        License
        =======
        
        Copyright (c) 2012-2013, Plone Foundation
        All rights reserved.
        
        Redistribution and use in source and binary forms, with or without
        modification, are permitted provided that the following conditions are met:
        
         - Redistributions of source code must retain the above copyright notice, this
           list of conditions and the following disclaimer.
        
         - Redistributions in binary form must reproduce the above copyright notice,
           this list of conditions and the following disclaimer in the documentation
           and/or other materials provided with the distribution.
        
        THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
        ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
        WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
        DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
        FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
        DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
        SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
        CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
        OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
        OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
        
Keywords: calendar calendaring ical icalendar event todo journal recurring
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent