[CalendarServer-changes] [267] CalendarServer/trunk
source_changes at macosforge.org
source_changes at macosforge.org
Thu Oct 12 10:54:04 PDT 2006
Revision: 267
http://trac.macosforge.org/projects/calendarserver/changeset/267
Author: cdaboo at apple.com
Date: 2006-10-12 10:54:03 -0700 (Thu, 12 Oct 2006)
Log Message:
-----------
Update to latest vobject (r160) - now includes our patches.
Modified Paths:
--------------
CalendarServer/trunk/run
Removed Paths:
-------------
CalendarServer/trunk/lib-patches/vObject/base.patch
CalendarServer/trunk/lib-patches/vObject/icalendar.patch
Deleted: CalendarServer/trunk/lib-patches/vObject/base.patch
===================================================================
--- CalendarServer/trunk/lib-patches/vObject/base.patch 2006-10-10 17:17:08 UTC (rev 266)
+++ CalendarServer/trunk/lib-patches/vObject/base.patch 2006-10-12 17:54:03 UTC (rev 267)
@@ -1,74 +0,0 @@
-Index: src/vobject/base.py
-===================================================================
---- src/vobject/base.py (revision 155)
-+++ src/vobject/base.py (working copy)
-@@ -1,5 +1,6 @@
- """vobject module for reading vCard and vCalendar files."""
-
-+import copy
- import re
- import sys
- import logging
-@@ -56,6 +57,12 @@
- self.parentBehavior = None
- self.isNative = False
-
-+ def copy(self, copyit):
-+ self.group = copyit.group
-+ self.behavior = copyit.behavior
-+ self.parentBehavior = copyit.parentBehavior
-+ self.isNative = copyit.isNative
-+
- def validate(self, *args, **kwds):
- """Call the behavior's validate method, or return True."""
- if self.behavior:
-@@ -250,6 +257,21 @@
- if qp:
- self.value = str(self.value).decode('quoted-printable')
-
-+ @classmethod
-+ def duplicate(clz, copyit):
-+ newcopy = clz('', {}, '')
-+ newcopy.copy(copyit)
-+ return newcopy
-+
-+ def copy(self, copyit):
-+ super(ContentLine, self).copy(copyit)
-+ self.name = copyit.name
-+ self.value = copy.copy(copyit.value)
-+ self.encoded = self.encoded
-+ self.params = copy.copy(copyit.params)
-+ self.singletonparams = copy.copy(copyit.singletonparams)
-+ self.lineNumber = copyit.lineNumber
-+
- def __eq__(self, other):
- try:
- return (self.name == other.name) and (self.params == other.params) and (self.value == other.value)
-@@ -361,6 +383,27 @@
-
- self.autoBehavior()
-
-+ @classmethod
-+ def duplicate(clz, copyit):
-+ newcopy = clz()
-+ newcopy.copy(copyit)
-+ return newcopy
-+
-+ def copy(self, copyit):
-+ super(Component, self).copy(copyit)
-+
-+ # deep copy of contents
-+ self.contents = {}
-+ for key, lvalue in copyit.contents.items():
-+ newvalue = []
-+ for value in lvalue:
-+ newitem = value.duplicate(value)
-+ newvalue.append(newitem)
-+ self.contents[key] = newvalue
-+
-+ self.name = copyit.name
-+ self.useBegin = copyit.useBegin
-+
- def setProfile(self, name):
- """Assign a PROFILE to this unnamed component.
-
Deleted: CalendarServer/trunk/lib-patches/vObject/icalendar.patch
===================================================================
--- CalendarServer/trunk/lib-patches/vObject/icalendar.patch 2006-10-10 17:17:08 UTC (rev 266)
+++ CalendarServer/trunk/lib-patches/vObject/icalendar.patch 2006-10-12 17:54:03 UTC (rev 267)
@@ -1,83 +0,0 @@
-Index: src/vobject/icalendar.py
-===================================================================
---- src/vobject/icalendar.py (revision 155)
-+++ src/vobject/icalendar.py (working copy)
-@@ -377,8 +377,17 @@
- try:
- dtstart = self.dtstart.value
- except AttributeError, KeyError:
-- # if there's no dtstart, just return None
-- return None
-+ # Special for VTODO - try DUE property instead
-+ try:
-+ if self.name == "VTODO":
-+ dtstart = self.due.value
-+ else:
-+ # if there's no dtstart, just return None
-+ return None
-+ except AttributeError, KeyError:
-+ # if there's no due, just return None
-+ return None
-+
- # rrulestr complains about unicode, so cast to str
- rule = dateutil.rrule.rrulestr(str(line.value),
- dtstart=dtstart)
-@@ -422,7 +431,16 @@
- return rruleset
-
- def setrruleset(self, rruleset):
-- dtstart = self.dtstart.value
-+
-+ # Get DTSTART from component (or DUE if no DTSTART in a VTODO)
-+ try:
-+ dtstart = self.dtstart.value
-+ except AttributeError, KeyError:
-+ if self.name == "VTODO":
-+ dtstart = self.due.value
-+ else:
-+ raise
-+
- isDate = datetime.date == type(dtstart)
- if isDate:
- dtstart = datetime.datetime(dtstart.year,dtstart.month, dtstart.day)
-@@ -488,7 +506,7 @@
-
- if rule._bymonth is not None and len(rule._bymonth) > 0:
- if (rule._byweekday is not None or
-- len(rrule._bynweekday or ()) > 0 or
-+ len(rule._bynweekday or ()) > 0 or
- not (rule._freq == dateutil.rrule.YEARLY and
- len(rule._bymonth) == 1 and
- rule._bymonth[0] == rule._dtstart.month)):
-@@ -580,6 +598,8 @@
- if obj.value.tzinfo is None:
- obj.params['X-VOBJ-FLOATINGTIME-ALLOWED'] = ['TRUE']
- if obj.params.get('TZID'):
-+ # Keep a copy of the original TZID around
-+ obj.params['X-VOBJ-ORIGINAL-TZID'] = obj.params['TZID']
- del obj.params['TZID']
- return obj
-
-@@ -592,6 +612,10 @@
- obj.value = dateTimeToString(obj.value, cls.forceUTC)
- if not cls.forceUTC and tzid is not None:
- obj.tzid_param = tzid
-+ if obj.params.get('X-VOBJ-ORIGINAL-TZID'):
-+ if not hasattr(obj, 'tzid_param'):
-+ obj.tzid_param = obj.params['X-VOBJ-ORIGINAL-TZID']
-+ del obj.params['X-VOBJ-ORIGINAL-TZID']
-
- return obj
-
-@@ -612,7 +636,10 @@
- obj.value=str(obj.value)
- obj.value=parseDtstart(obj)
- if getattr(obj, 'value_param', 'DATE-TIME').upper() == 'DATE-TIME':
-- if hasattr(obj, 'tzid_param'): del obj.tzid_param
-+ if hasattr(obj, 'tzid_param'):
-+ # Keep a copy of the original TZID around
-+ obj.params['X-VOBJ-ORIGINAL-TZID'] = obj.tzid_param
-+ del obj.tzid_param
- return obj
-
- @staticmethod
Modified: CalendarServer/trunk/run
===================================================================
--- CalendarServer/trunk/run 2006-10-10 17:17:08 UTC (rev 266)
+++ CalendarServer/trunk/run 2006-10-12 17:54:03 UTC (rev 267)
@@ -462,7 +462,7 @@
;;
esac;
svn_uri="${base}/vobject/trunk";
- svn_get "vObject" "${vobject}" "${svn_uri}" 155;
+ svn_get "vObject" "${vobject}" "${svn_uri}" 160;
fi;
py_install "vObject" "${vobject}";
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20061012/1643eaea/attachment.html
More information about the calendarserver-changes
mailing list