For reference and transparency: We have created this report on Apple Bug Reporter on 6 Aug 2015 here: https://bugreport.apple.com/web/?problemID=22169036


Summary:
RECURRENCE-ID for exceptions of recurring all-day events should be of type VALUE=DATE, but they have VALUE=DATE-TIME.

Steps to Reproduce:

  1. Create a recurring all-day event (for instance, daily for 10 days).
  2. Create an exception on a particular date, for instance change the title (SUMMARY)

Expected Results:

# master event:
DTSTART;VALUE=DATE:20150804

# exception:
RECURRENCE-ID;VALUE=DATE:20150805

Actual Results:

# master event:
DTSTART;VALUE=DATE:20150804

# exception:
RECURRENCE-ID:20150805T000000

As you can see, the RECURRENCE-ID is for VALUE=DATE-TIME, while the original event is of type VALUE=DATE.

This causes some clients to ignore the exception and/or add an additional event instead of using this event as an exception.

Notes:
http://tools.ietf.org/html/rfc5545#section-3.8.4.4
If the value of the “DTSTART” property is a DATE type value, then the value MUST be the calendar date for the recurrence instance.

Configuration: