Skip to content

RFC compliance and fixes for issue #137#180

Open
ftcvlad wants to merge 12 commits intosimshaun:masterfrom
ftcvlad:master
Open

RFC compliance and fixes for issue #137#180
ftcvlad wants to merge 12 commits intosimshaun:masterfrom
ftcvlad:master

Conversation

@ftcvlad
Copy link

@ftcvlad ftcvlad commented Jun 8, 2020

This PR fixes #137 (bugs 1 and 3). 'DTEND not predictable' mentioned in #137 happens because DTEND from rrule string takes precedence over the one set by parameter. This is not changed.

Bug 1: recurr does not parse rrule string correctly if the string has TZID. At the same time when converting Rule to string recurr is able to output TZID.
Bug 2: When converting Rule to string, recurr outputs 'DTSTART=', which RFC 5545 doesnt allow, and which recurr is not able to correctly parse

  1. Test Recurr is able to parse the string created by itself
  2. Fix parsing for the test to pass

Bug 3: If endDate is passed as DateTimeImmutable it is not applied to the produced rrule string because the check is instanceOf DateTime. Check for DateTimeInterface

DTSTART, DTEND and TZID from rrule string take precedence over constructor parameters

@ftcvlad ftcvlad changed the title RFC compliance and fixes for issue #137 RFC compliance and fixes for issue Fizes #137 Jun 8, 2020
@ftcvlad ftcvlad changed the title RFC compliance and fixes for issue Fizes #137 RFC compliance and fixes for issue Fixes #137 Jun 8, 2020
@ftcvlad ftcvlad changed the title RFC compliance and fixes for issue Fixes #137 RFC compliance and fixes for issue fixes #137 Jun 8, 2020
@ftcvlad ftcvlad changed the title RFC compliance and fixes for issue fixes #137 RFC compliance and fixes for issue #137 Jun 8, 2020
@dereuromark
Copy link

This looks quite useful.
Is this library still maintained or did someone fork it?

@romansidorov
Copy link

@simshaun Hi, could you please make a merge?

@samdark
Copy link

samdark commented Jan 29, 2025

@simshaun would you please take a look? Encountered this issue.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Rule::loadFromString cannot handle DTSTART/DTEND with timezones

4 participants