Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RRULE with UNTIL not working since version 3.9.2? #298

Closed
mlorant opened this issue Jan 2, 2020 · 3 comments
Closed

RRULE with UNTIL not working since version 3.9.2? #298

mlorant opened this issue Jan 2, 2020 · 3 comments

Comments

@mlorant
Copy link

mlorant commented Jan 2, 2020

I was updating an old requirements.txt file, still using icalendar==3.9.0. I decided to update to the last version. However an unit test broke. After some bisect, it seems the regression is appearing at 3.9.2. The following event is not parsed the same way than before:

BEGIN:VEVENT
UID:example-2
SUMMARY:Daily rehearsal
DESCRIPTION:Everday of the first week
DTSTART;TZID=Europe/Berlin:20150101T100000
DTEND;TZID=Europe/Berlin:20150101T120000
RRULE:FREQ=DAILY;UNTIL=20150107T10000Z
SEQUENCE:0
END:VEVENT

Here's two executions of my tests, where example-1 is a similar event with RRULE:FREQ=WEEKLY;BYDAY=MO as rrule. The test simply walk through vevents in a calendar file and prints event.get('RRULE')

$ pip install icalendar==3.9.2                       ####### First try, broken version
[...]
Successfully installed icalendar-3.9.2
$ python manage.py test [...]

example-1
vRecur({'FREQ': ['WEEKLY'], 'BYDAY': ['MO']})
-----------
example-2
None

$ pip install icalendar==3.9.1                       ####### Second try
[...]
Successfully installed icalendar-3.9.1
$ python manage.py test [...]

example-1
vRecur({'FREQ': ['WEEKLY'], 'BYDAY': ['MO']})
-----------
example-2
vRecur({'FREQ': ['DAILY'], 'UNTIL': [datetime.date(2015, 1, 7)]})

The problem is still present with icalendar=4.0.4. The RRULE is valid according to RFC5545.

@simon-budig
Copy link
Contributor

simon-budig commented Feb 13, 2020

I'm sorry but I missed that this is not about timezone definitions. I've deleted my misleading comments. My problem is tracked in issue #303.

@mlorant
Copy link
Author

mlorant commented Feb 1, 2023

Apologies, I've found since then that my test fixture had a typo, and that a zero was missing in the time part:

RRULE:FREQ=DAILY;UNTIL=20150107T10000Z
                                HHmms!

With a valid format with 6 numbers after the T, it works just fine as before. In fact, the 3.9.2 silently reject invalid date-time that was validated before, but I don't think it's really a problem in that way. I'm closing the issue.

@mlorant mlorant closed this as completed Feb 1, 2023
@niccokunzmann
Copy link
Member

niccokunzmann commented Feb 1, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants