How to interpret a monthly recurrence rule with only DTSTART (no BYDAY or BYMONTHDAY)?
According to RFC5545 you can define a recurrence rule with a frequency only, for example
DTSTART;TZID=US-Eastern:20180831T090000
RRULE:FREQ=MONTHLY
A smartphone with LineageOG (Android Calendar) apparently interprets this as BYMONTHDAY and shows the event only if there is a 31st of a month. An iPhone apparently interprets this as the last day of the month and shows the event each month (31st, 30th or even 28th). Which interpretation is correct?
Arguably iPhone is ‘wrong’ although the rfc5545 doesn’t explicitly address that issue https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html
Perhaps they have taken a ‘what would the non technical user expect ?’ approach?
Thinking Apple are wrong doesn’t help. It would be better to generate an RRULE that is explicitly clear. Use the BYMONTHDAY if only want 31st, or use the BYDAY=-1for the last day of month