[Bug] (CalDav): Last occurrence date is not calculated properly on recurring events
The last occurrence date is NOT calculated properly on recurring events causing notification emails for changes and cancellation not to be sent.
https://github.com/nextcloud/server/blob/500a9cb7244d3072f83eebc878e27833572e707d/apps/dav/lib/CalDAV/Schedule/IMipPlugin.php#L149-L154
Confirmed.
Tested using a every 2 days event that was recurring for two weeks, then cancelling the event after the second occurrence had passed.
Determined Cause.
The cause is the parseEventForOrganizer function in sabre/vobject/lib/ITip/Broker class that generates the iTip messages.
The function does not include the RRULE parameter as part of the iTipMessage->message->VEVENT that is sent to the scheduler.
Therefore the last occurrence cannot be calculated properly.
Possible fixes...
- remove last occurrence test
- update sabre dav repo
https://github.com/nextcloud/server/pull/47998 is in so this can be resumed
Confirmed fixed with https://github.com/nextcloud/server/pull/48583
RRULE is now present when cancelling an event series after the first occurance.