[caldeveloper-l] Recurrence override with RRULE

Garry Shutler garry at cronofy.com
Mon Apr 9 08:29:24 PDT 2018


Thanks Filip.

Rather than starting a new thread, it seems recurrence oddities come along
like buses. I think in this case Calendar.app (both macOS and iOS) is
expanding the series incorrectly, but as that's usually correct I thought
I'd ask before submitting a bug report to them.

BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
CREATED:20180401T000000Z
DTSTAMP:20180401T000000Z
UID:thursday-then-tuesday
*DTSTART;TZID=Europe/London:20180405T110000*
DTEND;TZID=Europe/London:20180405T120000
*RRULE:FREQ=WEEKLY;WKST=SU;COUNT=1;BYDAY=TU*
SUMMARY:Thursday then Tuesday
SEQUENCE:0
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

When imported into Google this shows an event on 2018-04-05 (Thursday) and
2018-04-10 (following Tuesday), this seems correct to me. However,
Calendar.app only shows the event on 2018-04-05 (Thursday).

>From my testing the actual days of the week doesn't seem to matter but I've
presented them in the form of the report we received in case it has some
bearing. An event like this can be created through Calendar.app so whilst a
bit of an outlier it's not an exotic hand-crafted iCalendar file or
something like that.

If anyone could confirm that the Google behaviour is correct (or not!) that
would be great.

Thanks,
Garry


*Garry Shutler* | CTO

On 5 April 2018 at 12:26, Filip Navara <navara at emclient.com> wrote:

> It is possible to have both properties in some cases, but it's also not
> universally supported and interoperable.
>
>
> The case is having "RECURRENCE-ID;RANGE=THISANDFUTURE:" and then
> overriding the rest of a the recurring series with a new RRULE. In practice
> most clients split the recurrence into two separate events and deal with
> the consequences (https://github.com/apple/ccs-calendarserver/blob/master/
> doc/Extensions/caldav-recursplit.txt).
>
>
> F.
>
>
> ------------------------------
> -----Original Message-----
> From: "Garry Shutler" <garry at cronofy.com>
> To: caldeveloper-l at lists.calconnect.org
> Date: 04/05/18 12:46
> Subject: [caldeveloper-l] Recurrence override with RRULE
>
> Hi,
>
> We've come across a weird one which I can't decide from the RFCs how it
> should be dealt with (so we're going by how it's displayed when imported).
>
> Here's a cut down example of what we've seen:
>
> BEGIN:VCALENDAR
> VERSION:2.0
> BEGIN:VEVENT
> DTSTART:20180323T070000Z
> DTEND:20180323T083000Z
> RRULE:FREQ=DAILY
> SEQUENCE:0
> SUMMARY:example
> UID:override-with-rrule
> END:VEVENT
> BEGIN:VEVENT
> DTSTART:20180323T080000Z
> DTEND:20180323T093000Z
>
> *RECURRENCE-ID:20180323T070000zRRULE:FREQ=DAILY*
> SEQUENCE:0
> SUMMARY:example
> UID:override-with-rrule
> END:VEVENT
> END:VCALENDAR
>
> I thought that a RECURRENCE-ID couldn't have a RRULE and/or that only the
> master should have RRULEs. I can't find anything in the RFCs to confirm
> this (my Google-fu/reading skills may be weak!).
>
> To reflect what is displayed in Calendar.app we're ignoring the RRULE in
> the override. However, I wanted to check here to see if that's what we
> should be doing, whether this is valid, etc.
>
> Cheers,
> Garry
>
> *Garry Shutler* | CTO
> ------------------------------
> _______________________________________________
> caldeveloper-l mailing list
> caldeveloper-l at lists.calconnect.org
> http://lists.calconnect.org/listinfo.cgi/caldeveloper-l-calconnect.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.calconnect.org/pipermail/caldeveloper-l-calconnect.org/attachments/20180409/9942555f/attachment.html>


More information about the caldeveloper-l mailing list