Mailing list archives: August 2008

Site index · List index
Message listThread · Author · Date
safoundation.org rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass &lt;/span&gt;&lt;span class=&quot;cx&quot;&gt; &lt;/span&gt;&lt;span class=&quot;rem&quot;&gt;- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
safoundation.org i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vobject to + # deal with unusual RRULEs correctly + if event.rdate[i] == dt: + del event.rdate[i] + + # ignore timezones and recurrence till tzinfo -&gt; PyICU is written + # give the repository a naive datetime, no timezone + try: + dt = else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + &quot;RECURRENCE-ID = %s&quot; % recurrenceID + else: </span><span class="cx"> eventItem = uidMatchItem </span><span class="rem">- uidMatchItem = None </span><span class="cx"> countUpdated += 1 </span><span class="rem">- else: - eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eventItem.icalUID = unicode(eventItem.itsUUID) - - logger.debug(&quot;eventItem is %s&quot; % str(eventItem)) </span><span class="add">+ else: + eventItem = pickKind.newItem(None, newItemParent) + countNew += 1 + eventItem.icalUID = event.uid[0].value + + + # vobject isn't meshing well with dateutil when dtstart isDate; + # dtstart is converted to a datetime for dateutil, but rdate + # isn't. To make dateutil happy, convert rdates which are dates to + # datetimes until vobject is fixed. + for i, rdate in enumerate(event.rdate): + if type(rdate) == date: + event.rdate[i] = datetime.datetime.combine(rdate, time(0)) + # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent) - countNew += 1 - if first: - eventItem.icalUID = event.uid[0].value - first = False - else: - eveen + # give the repository a naive datetime, no timezone + try: + dt = dt.astimezone(localtime).replace(tzinfo=None) + except ValueError: # astimezone will fail for naive datetimes + pass </span><span class="cx"> </span><span class="rem">- #Default to NOT any time - eventItem.anyTime = False - - eventItem.displayName = displayName - if isDate: - eventItem.allDay = True - eventItem.startTime = dt - if v Mon, 11 Apr, 05:03
Message listThread · Author · Date
Box list
Oct 20086
Sep 20085
Aug 200814
Jul 20088
Jun 20086
May 200813
Apr 200841
Mar 20083
Feb 20083
Dec 20073
Nov 20072
Sep 20071
Aug 200723
Jul 200726
Jun 200710
May 200728
Apr 20074
Mar 20077
Feb 200730
Jan 20079
Dec 20064
Nov 200618
Oct 200629
Sep 20065
Aug 200632
Jul 200630
Jun 200624
May 2006100
Apr 200660
Mar 20065