So, this is a heads up that last Friday I checked in a fix for reading and writing VTODOs (a.k.a. Tasks) in ICalendar, c.f.

Bug 6848: Chandler should be able to read/write ICalendar VTODOs

A couple of notes for those of you following along at home:

- VTODO has a DUE property, which (shockingly) is the date/time the task is due. As discussed on the design list a while back, I went ahead and had the importer create an Event+Task item if there’s a DUE, with the Event's start time set to the DUE value. If there’s no DUE, we just go ahead and create an ordinary old Task.

- In the case of VTODO, we are able to use the STATUS field (which is allowed different values compared to VEVENT) to preserve Triage Status. In the end, I thought I found a vaguely reasonable interpretation of the ICalendar values:

   needs-action   <==> NOW, with needsReply==True
   in-process      <==> NOW, with needsReply==False
   cancelled       <==> LATER
   completed      <==> DONE

- There are some known bugs where Chandler won’t subscribe to .ics URLs that contain only VTODOs (e.g. bugzilla). These currently don’t work due to some HTTP problems (i.e. in zanshin), but I did double- check that the new code could successfully import the contents of those URLs.

- Chandler doesn't round-trip VTODO properly: If we read a VTODO with a DUE, we write out a VEVENT (i.e. the Event-ness of the Event+Task in Chandler takes precedence when we choose what ICalendar to write). This isn’t an insurmountable problem, but doing so right away would break some existing Cosmo shares. I’ll probably wait till the current “dual share” scheme in Chandler is gone till I fix it ... see Bug 8321 for details.

Let me know if you have comments, questions etc etc,
--Grant
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Open Source Applications Foundation "Design" mailing list
http://lists.osafoundation.org/mailman/listinfo/design

Reply via email to