nextcloud / server

☁️ Nextcloud server, a safe home for all your data
https://nextcloud.com
GNU Affero General Public License v3.0
26.91k stars 4.02k forks source link

[Bug] (CalDav): Last occurrence date is not calculated properly on recurring events #45489

Open SebastianKrupinski opened 4 months ago

SebastianKrupinski commented 4 months ago

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

SebastianKrupinski commented 4 months ago

Confirmed.

Tested using a every 2 days event that was recurring for two weeks, then cancelling the event after the second occurrence had passed.

SebastianKrupinski commented 4 months ago

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...

ChristophWurst commented 4 days ago

https://github.com/nextcloud/server/pull/47998 is in so this can be resumed