diff options
| author | Craig Jennings <c@cjennings.net> | 2026-02-03 08:09:30 -0600 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-02-03 08:09:30 -0600 |
| commit | 09cfcfd6826f9bc8b379dde88e1d9ca719c1bdb2 (patch) | |
| tree | 6f062ccc52cf5c334380340ca04d280da3b1df28 /emojis/emojione-v2.2.6-22/1f482-1f3ff.png | |
| parent | 03a9247ba4be4803b995510e0e6980254034d7ba (diff) | |
feat(calendar-sync): add EXDATE support for excluded recurring event dates
When someone deletes a single instance of a recurring meeting in Google
Calendar, the calendar exports an EXDATE property marking that date as
excluded. Previously, calendar-sync expanded the RRULE without filtering
out these excluded dates, causing deleted instances to appear in org output.
New functions:
- calendar-sync--get-exdates: Extract all EXDATE values from event
- calendar-sync--get-exdate-line: Get full EXDATE line with parameters
- calendar-sync--parse-exdate: Parse EXDATE into datetime list
- calendar-sync--collect-exdates: Collect excluded dates with TZ conversion
- calendar-sync--exdate-matches-p: Check if occurrence matches an EXDATE
- calendar-sync--filter-exdates: Filter out excluded dates from occurrences
Modified calendar-sync--expand-recurring-event to collect and filter
EXDATEs after RRULE expansion.
Includes 47 new tests covering extraction, parsing, collection, filtering,
and integration with RECURRENCE-ID exceptions.
Diffstat (limited to 'emojis/emojione-v2.2.6-22/1f482-1f3ff.png')
0 files changed, 0 insertions, 0 deletions
