Fix: expand REPORT leaves recurrence properties on expanded instances

_strip_single_event() removed the recurrence-defining properties (RRULE,
EXDATE, EXRULE, RDATE) with a single try/except around sequential
delattr() calls. When one of them was absent (e.g. an event with no
EXDATE), the AttributeError aborted the whole block and the following
properties -- notably RDATE -- were left on the expanded
single-occurrence VEVENTs returned by a calendar-data expand REPORT.

Remove each property independently so a missing one no longer prevents
removal of the others. Add a regression test and fixture.

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
TowyTowy
2026-07-12 22:30:47 +02:00
parent ffb90de841
commit 9d46d5b63d
4 changed files with 53 additions and 7 deletions

View File

@@ -0,0 +1,12 @@
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Radicale tests//NONSGML test//EN
BEGIN:VEVENT
UID:event_rrule_rdate
DTSTART:20060102T170000Z
DURATION:PT1H
RRULE:FREQ=DAILY;COUNT=3
RDATE:20060110T170000Z
SUMMARY:Daily recurring meeting
END:VEVENT
END:VCALENDAR