Subject: | Broken handling of hourly, minutely, and secondly frequency with bymonth or bymonthday |
There is a problem with the way this module uses intersection to apply various BYMONTH, BYMONTHDAY constraints to FREQ=MINUTELY, FREQ=HOURLY, and FREQ=SECONDLY. For example, if you have an ICAL recurrence defined like so:
RRULE:FREQ=MINUTELY;INTERVAL=4;BYHOUR=4;BYMONTH=4;BYMONTHDAY=4
The expectation is that it will output 15 dates each year (April 4th @ 4:00, 4:04, 4:08, ... 11 more ..., 4:56). Instead, if given this input, it outputs only the first one. The workaround is to add this to the line:
BYMINUTE=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59
It's pretty obscure and I don't know if I have ever run into a need for this, but I ran across it well trying to write up some test cases for some code I'm writing.
If I have time, I will try to send a patch.