[GH-ISSUE #30] Recurrence Count and Until lead to wrong count in Caldav #27

Closed
opened 2026-02-25 20:30:44 +03:00 by kerem · 3 comments
Owner

Originally created by @aluxnimm on GitHub (Apr 12, 2015).
Original GitHub issue: https://github.com/aluxnimm/outlookcaldavsynchronizer/issues/30

Originally assigned to: @aluxnimm on GitHub.

E.g. creating a daily recurring event with count 5 leads to only 4 events in caldav, because both count and until are set and until is not in utc.
Sometimes also an exception occurs:

ERROR 2015-04-12 20:57:03,048 [VSTA_Main] zer.Implementation.CalDavEventRepository . TryDeserializeICalEvent - Could not deserilaize ICalData of '/SOGo/dav/nimm/Calendar/4788-5513C300-1-7BD66180/2dca3b46-7299-4506-86f2-02dab967c46f.ics':
BEGIN:VCALENDAR
PRODID:-//ddaysoftware.com//NONSGML DDay.iCal 1.0//EN
VERSION:2.0
BEGIN:VEVENT
CLASS:PUBLIC
DTEND:20150413T083000Z
DTSTAMP:20150412T185035Z
DTSTART:20150413T080000Z
ORGANIZER;CN=Alexander Nimmervoll:MAILTO:nimm@technikum-wien.at
PRIORITY:5
RRULE:FREQ=DAILY;COUNT=3;UNTIL=20150415T000000
SEQUENCE:0
SUMMARY:testex
TRANSP:Opaque
UID:dcfaaa1c-f0b6-442e-ae36-07d75f504a52
END:VEVENT
BEGIN:VEVENT
CLASS:PUBLIC
DTEND:20150414T100000Z
DTSTAMP:20150412T185036Z
DTSTART:20150414T080000Z
ORGANIZER;CN=Alexander Nimmervoll:MAILTO:nimm@technikum-wien.at
PRIORITY:5
RECURRENCE-ID:20150414T080000Z
SEQUENCE:1
SUMMARY:testex
TRANSP:Opaque
UID:dcfaaa1c-f0b6-442e-ae36-07d75f504a52
END:VEVENT
END:VCALENDAR
System.ArgumentException: Both COUNT and UNTIL cannot be supplied together; they are mutually exclusive.

Original comment by: aluxnimm

Original Ticket: outlookcaldavsynchronizer/25

Originally created by @aluxnimm on GitHub (Apr 12, 2015). Original GitHub issue: https://github.com/aluxnimm/outlookcaldavsynchronizer/issues/30 Originally assigned to: @aluxnimm on GitHub. E.g. creating a daily recurring event with count 5 leads to only 4 events in caldav, because both count and until are set and until is not in utc. Sometimes also an exception occurs: ERROR 2015-04-12 20:57:03,048 [VSTA_Main] zer.Implementation.CalDavEventRepository . TryDeserializeICalEvent - Could not deserilaize ICalData of '/SOGo/dav/nimm/Calendar/4788-5513C300-1-7BD66180/2dca3b46-7299-4506-86f2-02dab967c46f.ics': BEGIN:VCALENDAR PRODID:-//ddaysoftware.com//NONSGML DDay.iCal 1.0//EN VERSION:2.0 BEGIN:VEVENT CLASS:PUBLIC DTEND:20150413T083000Z DTSTAMP:20150412T185035Z DTSTART:20150413T080000Z ORGANIZER;CN=Alexander Nimmervoll:MAILTO:nimm@technikum-wien.at PRIORITY:5 RRULE:FREQ=DAILY;COUNT=3;UNTIL=20150415T000000 SEQUENCE:0 SUMMARY:testex TRANSP:Opaque UID:dcfaaa1c-f0b6-442e-ae36-07d75f504a52 END:VEVENT BEGIN:VEVENT CLASS:PUBLIC DTEND:20150414T100000Z DTSTAMP:20150412T185036Z DTSTART:20150414T080000Z ORGANIZER;CN=Alexander Nimmervoll:MAILTO:nimm@technikum-wien.at PRIORITY:5 RECURRENCE-ID:20150414T080000Z SEQUENCE:1 SUMMARY:testex TRANSP:Opaque UID:dcfaaa1c-f0b6-442e-ae36-07d75f504a52 END:VEVENT END:VCALENDAR System.ArgumentException: Both COUNT and UNTIL cannot be supplied together; they are mutually exclusive. Original comment by: aluxnimm Original Ticket: [outlookcaldavsynchronizer/25](https://sourceforge.net/p/outlookcaldavsynchronizer/25)
kerem 2026-02-25 20:30:44 +03:00
Author
Owner

@aluxnimm commented on GitHub (Apr 12, 2015):

From the RFC2445
; either UNTIL or COUNT may appear in a 'recur',
; but UNTIL and COUNT MUST NOT occur in the same 'recur'

The UNTIL rule part defines a date-time value which bounds the
recurrence rule in an inclusive manner. If the value specified by
UNTIL is synchronized with the specified recurrence, this date or
date-time becomes the last instance of the recurrence. If specified
as a date-time value, then it MUST be specified in an UTC time
format. If not present, and the COUNT rule part is also not present,
the RRULE is considered to repeat forever.

Original comment by: aluxnimm

<!-- gh-comment-id:126312609 --> @aluxnimm commented on GitHub (Apr 12, 2015): From the RFC2445 ; either UNTIL or COUNT may appear in a 'recur', ; but UNTIL and COUNT MUST NOT occur in the same 'recur' The UNTIL rule part defines a date-time value which bounds the recurrence rule in an inclusive manner. If the value specified by UNTIL is synchronized with the specified recurrence, this date or date-time becomes the last instance of the recurrence. If specified as a date-time value, then it MUST be specified in an UTC time format. If not present, and the COUNT rule part is also not present, the RRULE is considered to repeat forever. Original comment by: aluxnimm
Author
Owner

@aluxnimm commented on GitHub (Apr 13, 2015):

  • status: open --> closed
  • assigned_to: Alexander Nimmervoll

Original comment by: aluxnimm

<!-- gh-comment-id:126312610 --> @aluxnimm commented on GitHub (Apr 13, 2015): - **status**: open --> closed - **assigned_to**: Alexander Nimmervoll Original comment by: aluxnimm
Author
Owner

@aluxnimm commented on GitHub (Apr 13, 2015):

fixed, only count is used

Original comment by: aluxnimm

<!-- gh-comment-id:126312613 --> @aluxnimm commented on GitHub (Apr 13, 2015): fixed, only count is used Original comment by: aluxnimm
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/outlookcaldavsynchronizer#27
No description provided.