Read the statement by Michael Teeuw here.
Default Calendar Stopped Showing Recurring Events
-
@BigSky thanks for the ics… so debugging the rule parser returned today
event start=25 Nov 2020 09:00 am end=25 Nov 2020 09:10 am event start=25 Nov 2020 09:10 am end=25 Nov 2020 09:20 am event start=25 Nov 2020 09:20 am end=25 Nov 2020 09:35 am event start=25 Nov 2020 09:35 am end=25 Nov 2020 09:45 am event start=25 Nov 2020 09:45 am end=25 Nov 2020 09:55 am event start=25 Nov 2020 09:55 am end=25 Nov 2020 10:40 am event start=25 Nov 2020 10:40 am end=25 Nov 2020 10:50 am event start=25 Nov 2020 10:50 am end=25 Nov 2020 11:40 am event start=25 Nov 2020 11:40 am end=25 Nov 2020 11:45 am event start=25 Nov 2020 11:45 am end=25 Nov 2020 12:10 pm event start=25 Nov 2020 12:10 pm end=25 Nov 2020 12:15 pm event start=25 Nov 2020 12:15 pm end=25 Nov 2020 12:40 pm event start=25 Nov 2020 12:40 pm end=25 Nov 2020 12:45 pm event start=25 Nov 2020 12:45 pm end=25 Nov 2020 01:15 pm event start=25 Nov 2020 01:15 pm end=25 Nov 2020 01:30 pm
808 entries
the 1st 15(maximumEntries) , but they are in the past…
so i see the problem, the rule.between, has miscalculated the start date/time (start of day - offset), so yesterday
which floods the list with past events., which then gets truncated at maximumEntries, and no good data there
why it shows sometimes, is the start becomes TODAY later, and there is a window where current time events sneak into the list at the front… (anything after 5pm mountain time (24-7))
i have tried a fix, which resolves this, but I need to do a bunch of testing…
great testcase tho, thank you
-
-
@sdetweil glad the test file was helpful - and thanks again for looking into this!
-
@Alvinger i looked at your code… it fixes the results, but not the cause… I will look at resolving the cause the cause wastes storage and cycles
-
@sdetweil It fixes the result while also retaining backward compatibility. From my viewpoint the cause is that calendarfetcher.js not only fetches but also filters. It should just fetch and let calendar.js do the filtering. But that would require substantial changes to both files. My “fix” is just a few lines of code.
But I am all for fixing the cause! -
@Alvinger yeh, I agree on the ‘right’ fix, but don’t want to rewrite the whole thing…
the ‘cause’ is that the rule.between(from date/time is set to yesterday (when NOT looking for pastEvents)
so rrule dutifully returns events that could occur yesterday or before now today… .
if not pastEvetns, from should be NOW… -
@sdetweil Aah, missed that one. But you still have to address the issue with calendarfetcher returning “only” maximumEntries even if broadcastPastEvents is set.
-
@Alvinger yes, i like your solution there