c4d87601

Author: Tom Sydney Kerckhove <syd@cs-syd.eu>

Committer: Tom Sydney Kerckhove <NorfairKing@users.noreply.github.com>

ical-recurrence: keep the limit out of the weekly BySetPos set

@
BYSETPOS operates on
a set of recurrence instances in one interval of the recurrence
rule.  For example, in a WEEKLY rule, the interval would be one
week A set of recurrence instances starts at the beginning of the
interval defined by the FREQ rule part.
@

The interval here is the week, so the set BYSETPOS numbers has to be
every candidate in the week.  The limit is an implementation detail of
this library, not part of the recurrence rule, so it may only cut off
results.

Drop the early 'd <= limit' guard from inside the list that filterSetPos
numbers.  The guard below it already bounds the results, and the weeks
themselves are already bounded by weeklyWeekRecurrence, so nothing here
becomes unbounded.

Suite timing

Time to Start Worker time Duration Time to finish Idle
Config 2m40s 17s 17s 2m57s 2m40s
Eval 2m57s 13s 13s 3m10s 0s
Build 3m10s 5m55s 38m06s 41m16s 35m50s
Suite 2m40s 6m26s 38m35s 41m16s 38m30s

Timeline

0s3m39m20s39m40s40m40m20s40m40s41m