python-vobject (0.8.1c-4) debian-dir only changes

Summary

 debian/README.source                                                           |   57 +++
 debian/changelog                                                               |  154 ++++++++++
 debian/compat                                                                  |    1 
 debian/control                                                                 |   19 +
 debian/copyright                                                               |   68 ++++
 debian/docs                                                                    |    2 
 debian/patches/0001-don-t-install-ics_diff.patch                               |   22 +
 debian/patches/0002-Deepcopy-params.patch                                      |   54 +++
 debian/patches/0003-Treat-untils-as-floating.patch                             |   41 ++
 debian/patches/0004-Normalise-year-info-to-be-within-Python-s-year-bound.patch |   26 +
 debian/patches/series                                                          |    4 
 debian/pycompat                                                                |    1 
 debian/pyversions                                                              |    1 
 debian/rules                                                                   |   17 +
 debian/watch                                                                   |   10 
 15 files changed, 477 insertions(+)

    
download this patch

Patch contents

--- python-vobject-0.8.1c.orig/debian/copyright
+++ python-vobject-0.8.1c/debian/copyright
@@ -0,0 +1,68 @@
+This package was debianized by Guido Guenther <agx@sigxcpu.org> on
+Wed,  6 Sep 2006 11:04:33 +0200.
+
+It was downloaded from http://vobject.skyhouseconsulting.com/
+
+Upstream Author: Jeffrey Harris <jeffrey@osafoundation.org>
+
+Copyright (c) 2004-2006 Jeffrey Harris.  All rights reserved.
+
+License:
+
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2004-2006 Jeffrey Harris.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. 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.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 APACHE SOFTWARE FOUNDATION OR
+ * ITS 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.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ *
+ * Portions of this software are based upon public domain software
+ * originally written at the National Center for Supercomputing Applications,
+ * University of Illinois, Urbana-Champaign.
+ */
+
--- python-vobject-0.8.1c.orig/debian/control
+++ python-vobject-0.8.1c/debian/control
@@ -0,0 +1,19 @@
+Source: python-vobject
+Section: python
+Priority: optional
+Maintainer: Calendarserver Maintainers <calendarserver-maintainers@lists.alioth.debian.org>
+Uploaders: Guido Günther <agx@sigxcpu.org>
+Build-Depends: cdbs, debhelper (>= 5), python-dev, python-support (>= 0.3), python-dateutil, python-setuptools, quilt
+Standards-Version: 3.8.3
+Vcs-Git: git://git.debian.org/git/calendarserver/python-vobject.git
+Vcs-Browser: http://git.debian.org/?p=calendarserver/python-vobject.git
+Homepage: http://vobject.skyhouseconsulting.com/
+
+Package: python-vobject
+Architecture: all
+Depends: ${python:Depends}, ${misc:Depends}, python-dateutil (>= 1.1)
+Conflicts: calendarserver (<< 2.0)
+Description: parse iCalendar and VCards in Python
+ Parses iCalendar and vCard files into Python data structures, decoding the
+ relevant encodings. Also serializes vobject data structures to valid iCalendar
+ or vCard unicode strings.
--- python-vobject-0.8.1c.orig/debian/changelog
+++ python-vobject-0.8.1c/debian/changelog
@@ -0,0 +1,154 @@
+python-vobject (0.8.1c-4) unstable; urgency=low
+
+  * [80b984b] Restore original upstream behaviour on unrecognized parameters
+    (Closes: #569273)
+  * [ae6eba8] Normalise year info to be within Python's year bounds. Thanks
+    to Dave Holland for the patch (Closes: #574133)
+
+ -- Guido Günther <agx@sigxcpu.org>  Wed, 01 Jun 2011 20:05:05 +0200
+
+python-vobject (0.8.1c-3) unstable; urgency=low
+
+  [ Rahul Amaram ]
+  * [57d7cbd] Add patches from Apple Calendarserver 2.3 acked by Jeffrey
+    Harris
+
+ -- Guido Günther <agx@sigxcpu.org>  Mon, 04 Jan 2010 20:32:01 +0100
+
+python-vobject (0.8.1c-2) unstable; urgency=low
+
+  * Upload to unstable (Closes: #554563)
+  * [0365f3c] Bump standards version
+  * [fda4195] Add README.source
+
+ -- Guido Günther <agx@sigxcpu.org>  Tue, 08 Dec 2009 20:38:38 +0100
+
+python-vobject (0.8.1c-1) experimental; urgency=low
+
+  * [d403e62] Imported Upstream version 0.8.1c
+  * [e66c3d7] rebase ics_diff patch
+  * [20fc2d0] conflict with calendarserver << 2.0 since older version
+              rely on vobject bugs that are now fixed
+              (http://trac.calendarserver.org/ticket/287) (Closes: #491915)
+  * [f03e51c] change maintainer to calendarserver team and bump
+              standards version
+  * [c5d850d] honor nocheck in DEB_BUILD_OPTIONS
+  * [17e1a18] debian/watch: allow letter in the version match
+
+ -- Guido Günther <agx@sigxcpu.org>  Fri, 17 Apr 2009 23:13:41 +0200
+
+python-vobject (0.7.1-1) experimental; urgency=low
+
+  * [43d3667] New Upstream version
+  * [ecc0342] drop support for python 2.4 - the code uses python 2.5
+    constructs
+  * [0b81a6b] update remove_ics.diff patch
+
+ -- Guido Guenther <agx@sigxcpu.org>  Fri, 08 Aug 2008 14:46:19 +0200
+
+python-vobject (0.6.6-1) experimental; urgency=low
+
+  * Upload to experimental since it breaks calendarserver:
+          http://trac.calendarserver.org/ticket/287
+  * [bd308fb] new upstream version 0.6.6
+  * [59a6bae] refresh remove_ics_diff.patch
+  * [2a0a9d9] bump standards version to 3.8.0
+  * [096502c] debian/control: add Homepage:
+
+ -- Guido Guenther <agx@sigxcpu.org>  Fri, 20 Jun 2008 09:37:02 +0200
+
+python-vobject (0.6.0-1) unstable; urgency=low
+
+  * New Upstream Version
+  * fix Python spelling
+  * fix PYTHONPATH for doctests
+  * lower setuptools version number since 0.6c8 isn't in Debian yet and
+    0.6c7 is fine
+
+ -- Guido Guenther <agx@sigxcpu.org>  Fri, 22 Feb 2008 09:43:55 +0100
+
+python-vobject (0.5.0-1) unstable; urgency=low
+
+  * New upstream version 
+
+ -- Guido Guenther <agx@sigxcpu.org>  Wed, 16 Jan 2008 11:45:55 +0100
+
+python-vobject (0.4.9-1) unstable; urgency=low
+
+  * New Upstream Version (Closes: #458188)
+  * update upstream URL
+  * add watch file
+  * add VCS-* fields
+  * bump standards version
+
+ -- Guido Guenther <agx@sigxcpu.org>  Wed, 02 Jan 2008 10:59:16 +0100
+
+python-vobject (0.4.8-1) unstable; urgency=low
+
+  * New Upstream Version (Closes: #421894) 
+  * remove_ics_diff.patch: don't install /usr/bin/ics_diff
+
+ -- Guido Guenther <agx@sigxcpu.org>  Mon, 18 Jun 2007 18:30:30 +0200
+
+python-vobject (0.4.4-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Remove quilt support as there is no patches dir (Closes: #393885).
+
+ -- Luk Claes <luk@debian.org>  Thu, 26 Oct 2006 20:29:44 +0200
+
+python-vobject (0.4.4-1) unstable; urgency=low
+
+  * New Upstream Version
+  * includes all of our patches so we can drop debian/patches/*.patch
+  * good candidate for etch
+
+ -- Guido Guenther <agx@sigxcpu.org>  Wed, 11 Oct 2006 09:05:51 +0200
+
+python-vobject (0.4.3-2) unstable; urgency=low
+
+  * depend on python-setuptools (Closes: #391881).
+
+ -- Guido Guenther <agx@sigxcpu.org>  Mon,  9 Oct 2006 13:26:12 +0200
+
+python-vobject (0.4.3-1) unstable; urgency=low
+
+  * New Upstream (non SVN!) Version
+  * cdbs cleanups
+
+ -- Guido Guenther <agx@sigxcpu.org>  Sat,  7 Oct 2006 00:50:15 +0200
+
+python-vobject (0.0.svn155-2) unstable; urgency=low
+
+  * build depend on python-dateutil so the testuite can run properly. 
+    (Closes: #389385)
+
+ -- Guido Guenther <agx@sigxcpu.org>  Mon, 25 Sep 2006 15:49:10 +0200
+
+python-vobject (0.0.svn155-1) unstable; urgency=low
+
+  * new upstream svn version
+  * update icalendar.patch and base.patch from revision 188 of:
+      http://trac.macosforge.org/projects/calendarserver/browser/CalendarServer/trunk/patches/vObject/base.patch
+      http://trac.macosforge.org/projects/calendarserver/browser/CalendarServer/trunk/patches/vObject/icalendar.patch
+  * call test during build
+  * add versione (>= 1.1) dependency for python-dateutil
+
+ -- Guido Guenther <agx@sigxcpu.org>  Sat, 23 Sep 2006 23:57:41 +0200
+
+python-vobject (0.0.svn147-2) unstable; urgency=low
+
+  * set pyversions
+  * rm debian/dirs
+
+ -- Guido Guenther <agx@sigxcpu.org>  Thu,  7 Sep 2006 16:23:55 +0200
+
+python-vobject (0.0.svn147-1) unstable; urgency=low
+
+  * Initial release (Closes: #386254)
+  * import icalendar.patch and base.patch:
+      http://trac.macosforge.org/projects/calendarserver/browser/CalendarServer/trunk/patches/vObject/base.patch
+      http://trac.macosforge.org/projects/calendarserver/browser/CalendarServer/trunk/patches/vObject/icalendar.patch
+
+ -- Guido Guenther <agx@sigxcpu.org>  Wed,  6 Sep 2006 11:04:33 +0200
+
--- python-vobject-0.8.1c.orig/debian/pycompat
+++ python-vobject-0.8.1c/debian/pycompat
@@ -0,0 +1 @@
+2
--- python-vobject-0.8.1c.orig/debian/watch
+++ python-vobject-0.8.1c/debian/watch
@@ -0,0 +1,10 @@
+# Example watch control file for uscan
+# Rename this file to "watch" and then you can run the "uscan" command
+# to check for upstream updates and more.
+# See uscan(1) for format
+
+# Compulsory line, this is a version 3 file
+version=3
+
+http://vobject.skyhouseconsulting.com/vobject-([\da-z\.]+)\.tar\.gz
+
--- python-vobject-0.8.1c.orig/debian/compat
+++ python-vobject-0.8.1c/debian/compat
@@ -0,0 +1 @@
+5
--- python-vobject-0.8.1c.orig/debian/pyversions
+++ python-vobject-0.8.1c/debian/pyversions
@@ -0,0 +1 @@
+2.5-
--- python-vobject-0.8.1c.orig/debian/rules
+++ python-vobject-0.8.1c/debian/rules
@@ -0,0 +1,17 @@
+#!/usr/bin/make -f
+  
+DEB_PYTHON_SYSTEM = pysupport
+
+# Add here any variable or target overrides you need
+include /usr/share/cdbs/1/rules/debhelper.mk
+include /usr/share/cdbs/1/class/python-distutils.mk
+include /usr/share/cdbs/1/rules/patchsys-quilt.mk
+
+DEB_PYTHON_CLEAN_ARGS = --all
+DEB_PYTHON_INSTALL_ARGS_ALL += --single-version-externally-managed
+
+ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
+build/python-vobject::
+		python test_vobject.py
+endif
+
--- python-vobject-0.8.1c.orig/debian/docs
+++ python-vobject-0.8.1c/debian/docs
@@ -0,0 +1,2 @@
+ACKNOWLEDGEMENTS.txt
+README.txt
--- python-vobject-0.8.1c.orig/debian/README.source
+++ python-vobject-0.8.1c/debian/README.source
@@ -0,0 +1,57 @@
+This package uses quilt to manage all modifications to the upstream
+source.  Changes are stored in the source package as diffs in
+debian/patches and applied during the build.
+
+To configure quilt to use debian/patches instead of patches, you want
+either to export QUILT_PATCHES=debian/patches in your environment
+or use this snippet in your ~/.quiltrc:
+
+    for where in ./ ../ ../../ ../../../ ../../../../ ../../../../../; do
+        if [ -e ${where}debian/rules -a -d ${where}debian/patches ]; then
+                export QUILT_PATCHES=debian/patches
+        fi
+    done
+
+To get the fully patched source after unpacking the source package, cd to
+the root level of the source package and run:
+
+    quilt push -a
+
+The last patch listed in debian/patches/series will become the current
+patch.
+
+To add a new set of changes, first run quilt push -a, and then run:
+
+    quilt new <patch>
+
+where <patch> is a descriptive name for the patch, used as the filename in
+debian/patches.  Then, for every file that will be modified by this patch,
+run:
+
+    quilt add <file>
+
+before editing those files.  You must tell quilt with quilt add what files
+will be part of the patch before making changes or quilt will not work
+properly.  After editing the files, run:
+
+    quilt refresh
+
+to save the results as a patch.
+
+Alternately, if you already have an external patch and you just want to
+add it to the build system, run quilt push -a and then:
+
+    quilt import -P <patch> /path/to/patch
+    quilt push -a
+
+(add -p 0 to quilt import if needed). <patch> as above is the filename to
+use in debian/patches.  The last quilt push -a will apply the patch to
+make sure it works properly.
+
+To remove an existing patch from the list of patches that will be applied,
+run:
+
+    quilt delete <patch>
+
+You may need to run quilt pop -a to unapply patches first before running
+this command.
--- python-vobject-0.8.1c.orig/debian/patches/0002-Deepcopy-params.patch
+++ python-vobject-0.8.1c/debian/patches/0002-Deepcopy-params.patch
@@ -0,0 +1,54 @@
+From: Morgen Sagen <sagen@apple.com>
+Date: Mon, 4 Jan 2010 20:26:58 +0100
+Subject: Deepcopy params
+
+---
+ vobject/base.py |   14 +++++++++-----
+ 1 files changed, 9 insertions(+), 5 deletions(-)
+
+diff --git a/vobject/base.py b/vobject/base.py
+index b56c36a..40baf1e 100644
+--- a/vobject/base.py
++++ b/vobject/base.py
+@@ -284,6 +284,8 @@ class ContentLine(VBase):
+         self.value = copy.copy(copyit.value)
+         self.encoded = self.encoded
+         self.params = copy.copy(copyit.params)
++        for k,v in self.params.items():
++            self.params[k] = copy.copy(v)
+         self.singletonparams = copy.copy(copyit.singletonparams)
+         self.lineNumber = copyit.lineNumber
+         
+@@ -627,16 +629,16 @@ class Component(VBase):
+         print
+ 
+ class VObjectError(Exception):
+-    def __init__(self, message, lineNumber=None):
+-        self.message = message
++    def __init__(self, msg, lineNumber=None):
++        self.msg = msg
+         if lineNumber is not None:
+             self.lineNumber = lineNumber
+     def __str__(self):
+         if hasattr(self, 'lineNumber'):
+             return "At line %s: %s" % \
+-                   (self.lineNumber, self.message)
++                   (self.lineNumber, self.msg)
+         else:
+-            return repr(self.message)
++            return repr(self.msg)
+ 
+ class ParseError(VObjectError):
+     pass
+@@ -953,7 +955,9 @@ def defaultSerialize(obj, buf, lineLength):
+         if obj.group is not None:
+             s.write(obj.group + '.')
+         s.write(obj.name.upper())
+-        for key, paramvals in obj.params.iteritems():
++        keys = sorted(obj.params.iterkeys())
++        for key in keys:
++            paramvals = obj.params[key]
+             s.write(';' + key + '=' + ','.join(dquoteEscape(p) for p in paramvals))
+         s.write(':' + obj.value)
+         if obj.behavior and not startedEncoded: obj.behavior.decode(obj)
+-- 
--- python-vobject-0.8.1c.orig/debian/patches/0004-Normalise-year-info-to-be-within-Python-s-year-bound.patch
+++ python-vobject-0.8.1c/debian/patches/0004-Normalise-year-info-to-be-within-Python-s-year-bound.patch
@@ -0,0 +1,26 @@
+From: Dave Holland <dave@debian.org>
+Date: Wed, 1 Jun 2011 19:58:27 +0200
+Subject: Normalise year info to be within Python's year bounds.
+
+Closes: #574133
+---
+ vobject/icalendar.py |    5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
+
+diff --git a/vobject/icalendar.py b/vobject/icalendar.py
+index b960deb..79ea7af 100644
+--- a/vobject/icalendar.py
++++ b/vobject/icalendar.py
+@@ -1617,6 +1617,11 @@ def stringToDateTime(s, tzinfo=None):
+                 tzinfo = utc
+     except:
+         raise ParseError("'%s' is not a valid DATE-TIME" % s)
++    if year < datetime.MINYEAR:
++        year = datetime.MINYEAR
++    if year > datetime.MAXYEAR:
++        year = datetime.MAXYEAR
++
+     return datetime.datetime(year, month, day, hour, minute, second, 0, tzinfo)
+ 
+ 
+-- 
--- python-vobject-0.8.1c.orig/debian/patches/series
+++ python-vobject-0.8.1c/debian/patches/series
@@ -0,0 +1,4 @@
+0001-don-t-install-ics_diff.patch
+0002-Deepcopy-params.patch
+0003-Treat-untils-as-floating.patch
+0004-Normalise-year-info-to-be-within-Python-s-year-bound.patch
--- python-vobject-0.8.1c.orig/debian/patches/0001-don-t-install-ics_diff.patch
+++ python-vobject-0.8.1c/debian/patches/0001-don-t-install-ics_diff.patch
@@ -0,0 +1,22 @@
+From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
+Date: Fri, 17 Apr 2009 22:46:06 +0200
+Subject: don't install ics_diff
+
+---
+ setup.py |    2 --
+ 1 files changed, 0 insertions(+), 2 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index d5b59da..f8e9b09 100755
+--- a/setup.py
++++ b/setup.py
+@@ -54,8 +54,6 @@ setup(name = "vobject",
+       license = "Apache",
+       zip_safe = True,
+       url = "http://vobject.skyhouseconsulting.com",
+-      entry_points = { 'console_scripts': ['ics_diff = vobject.ics_diff:main',
+-                                           'change_tz = vobject.change_tz:main']},
+       include_package_data = True,
+       test_suite = "test_vobject",
+ 
+-- 
--- python-vobject-0.8.1c.orig/debian/patches/0003-Treat-untils-as-floating.patch
+++ python-vobject-0.8.1c/debian/patches/0003-Treat-untils-as-floating.patch
@@ -0,0 +1,41 @@
+From: Morgen Sagen <sagen@apple.com>
+Date: Mon, 4 Jan 2010 20:27:01 +0100
+Subject: Treat untils as floating
+
+---
+ vobject/icalendar.py |   14 +++++++++++++-
+ 1 files changed, 13 insertions(+), 1 deletions(-)
+
+diff --git a/vobject/icalendar.py b/vobject/icalendar.py
+index 4a1da7c..b960deb 100644
+--- a/vobject/icalendar.py
++++ b/vobject/icalendar.py
+@@ -427,6 +427,18 @@ class RecurringComponent(Component):
+                         if dtstart.tzinfo is not None:
+                             until = until.astimezone(dtstart.tzinfo)
+ 
++                        # RFC2445 actually states that UNTIL must be a UTC value. Whilst the
++                        # changes above work OK, one problem case is if DTSTART is floating but
++                        # UNTIL is properly specified as UTC (or with a TZID). In that case dateutil
++                        # will fail datetime comparisons. There is no easy solution to this as
++                        # there is no obvious timezone (at this point) to do proper floating time
++                        # offset compisons. The best we can do is treat the UNTIL value as floating.
++                        # This could mean incorrect determination of the last instance. The better
++                        # solution here is to encourage clients to use COUNT rather than UNTIL
++                        # when DTSTART is floating.
++                        if dtstart.tzinfo is None:
++                            until = until.replace(tzinfo=None)
++
+                         rule._until = until
+                     
+                     # add the rrule or exrule to the rruleset
+@@ -473,7 +485,7 @@ class RecurringComponent(Component):
+             untilSerialize = lambda x: dateTimeToString(x, True)
+ 
+         for name in DATESANDRULES:
+-            if hasattr(self.contents, name):
++            if name in self.contents:
+                 del self.contents[name]
+             setlist = getattr(rruleset, '_' + name)
+             if name in DATENAMES:
+--