2901: Fix recurring dates yet again #2902
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Short description
When rewriting the recurrent dates a few weeks ago, I missed a test case: repeating an event every nth week of the month.
In that case, the recurrence rule gets the parameter
BYDAY=+3TH
. When parsing that, our packagerrule
turns that not into the parameterbyweekday
but into the parameterbynweekday
(the n stands for nth weekday). When turning the parameterbynweekday
back into a string, we get the parameterBYNWEEKDAY=3,+3
, which doesn't seem to be a valid parameter.So I decided to stick to the string of the recurrence rule as the source of truth and not the recurrence rule object from our
rrule
package.You can also see some fun workarounds in this issue: jkbrzt/rrule#326
Proposed changes
Side effects
Testing
Run the tests in your environment
Check particularly that events repeating every nth day (e.g. every 4th Friday) are showing correctly http://localhost:9000/testumgebung/de/events/test-monthly
Any other repeating event combinations that you can think of
Resolved issues
Fixes: #2901