[Freeassociation-devel] default INTERVAL parameter

Patrick Ohly patrick.ohly at gmx.de
Fri Aug 7 01:16:42 PDT 2009


On Tue, 2009-08-04 at 08:34 +0200, Benoit Schmid wrote:
> The ical rfc states that the default value for INTERVAL parameter
> is one.
> 
> Therefore in you code you have implemented:
> if(recur->interval != 1){ ...
> http://mxr.mozilla.org/comm-central/source/calendar/libical/src/libical/icalrecur.c#570
> 
> Unfortunately this causes problems for programs that does not
> implement the default value.
> 
> We use Lightning client with a Synchronica SyncML gateway.
> Because of this interval not provided anymore, our smart phones
> do not synchronize the recurrent anymore.
> 
> Lightning developers told me that it could be only
> changed in libical.

As a developer of a SyncML client (and soon server), I tend to disagree
with this.

If I understand it correctly, the Lightning client sends valid iCalendar
2.0 which is either not parsed correctly by the Synchronica server or
passed through by it in a way which then confuses the smart phones. In
both cases the correct solution is to improve the server.

The second best solution is to tweak the outgoing format of the SyncML
client. libical is not designed for this. What if one recipient wants
INTERVAL=1 and another chokes on it (unlikely, but who knows...)?
INTERVAL is perhaps a bad example, there might be better ones.

If a SyncML client wants flexible iCalendar 2.0 *and* vCalendar 1.0
support, then I recommend the Synthesis SyncML engine [1]. That's what
SyncEvolution uses now.

[1] http://lwn.net/Articles/333441/

-- 
Bye, Patrick Ohly
--  
Patrick.Ohly at gmx.de
http://www.estamos.de/






More information about the libical-devel mailing list