mirror of
https://github.com/bulwarkmail/native.git
synced 2026-11-03 16:07:32 +00:00
Three faults in how a series' changed and cancelled occurrences follow a change of the whole series (found in review, live on 1.0 and 0.16.23 for the web's version of the same code): - A rule that names its days - a series on Mondays and Tuesdays, one on the 5th and the 6th of each month - keeps its occurrences on those days when its start moves. Moving every occurrence by a day moved each override along anyway, so the Monday's landed on the Tuesday's key and one silently overwrote the other: the cancelled Tuesday came back with the Monday's title, and the Monday lost its change. Under such a rule every override but the first occurrence's now stays on its day, at the series' new time; the same holds for the new series of "this and following". Two overrides that still meet on one key (an hourly series turned all-day) no longer overwrite each other: the one that stays where it is, else the first, is kept, and the others are left out and logged. - "Does not repeat" for every occurrence kept the first occurrence's override on the single event, because a series' start counts as an occurrence of any rule: cancelled, 1.0 left the event out of every range query (still stored); retitled, 0.16.23 listed it twice. A series made single now keeps no overrides. - The SEQUENCE a change of every occurrence raises (0.16.6 to 0.16.23 refuse a lower one) came from the series as the app held it. A series opened from a reminder or a link was that copy, possibly older than the server's. The store now reads a series from the server every time a scope edit asks for it, so the raise, the overrides a split or a move rewrites and the rule all start from what the server holds.