3b73badf5d
feat: RECURRENCE-ID parsing, serialization, and round-trip support
...
Add recurrence_id field to Event domain model. Parse and serialize
RECURRENCE-ID from/to iCalendar files. Override events (with
RECURRENCE-ID but no RRULE) are safe to rewrite. Save validation
rejects events with both RECURRENCE-ID and RRULE.
2026-07-23 18:55:31 +01:00
6c1f58ffb0
feat: recurrence rule editing in EventEditor and ordinal BYDAY support
...
Add recurrence_frequency, recurrence_interval, recurrence_count, and
recurrence_by_weekday editor fields. Frequency cycles with Space.
BYDAY input accepts comma-separated names and ordinal prefixes (1MO).
Extend RecurrenceRule::by_weekday from std::chrono::weekday to ByWeekday
{ordinal, day} struct. Parser accepts ordinal BYDAY (+1MO, -1FR).
Remove strict BY*/FREQ pairing constraint to match RFC 5545.
2026-07-23 18:45:50 +01:00
Bernardo Magri
673a2c66c9
feat: embedded VTIMEZONE parsing, round-trip serialization
2026-07-23 16:37:22 +01:00
cfca6ab6d0
feat: support safe recurrence additions
...
Parse, persist, expand, and round-trip compatible RDATE values while preserving whole-series TUI behavior and conservative rewrite guards.
Verified: normal, warning-as-error, and ASan/UBSan builds pass all 9 suites; storage failure paths preserve calendar and backup bytes; live PTY restores terminal state.
2026-07-18 10:14:53 +01:00
c19098004e
feat: add recurrence and time zone support
2026-07-17 21:52:02 +01:00
22c6399056
feat: initialize Nocal terminal calendar
2026-07-17 21:24:06 +01:00