Conversation
There was a problem hiding this comment.
Pull request overview
This PR adjusts ORGANIZER mapping when generating iCalendar VEVENTs from Android calendar provider rows, specifically to keep exception instances aligned with their recurring main event’s ORGANIZER.
Changes:
- Update
OrganizerHandlerto base attendee/group-scheduling detection on the main event (to ensure exceptions inherit ORGANIZER even if they have no attendees). - Add tests covering ORGANIZER inheritance for exceptions and absence of ORGANIZER for non-group-scheduled events.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
lib/src/main/kotlin/at/bitfire/synctools/mapping/calendar/handler/OrganizerHandler.kt |
Changes attendee detection logic used to decide whether to emit ORGANIZER. |
lib/src/test/kotlin/at/bitfire/synctools/mapping/calendar/handler/OrganizerHandlerTest.kt |
Adds regression tests for ORGANIZER handling on exceptions. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
17dc283 to
206d37b
Compare
d3dee5b to
1ce96b4
Compare
rfc2822
left a comment
There was a problem hiding this comment.
I think this won't work, we had it like this before 2020 and changed it in bitfireAT/ical4android@80b9945.
See for instance the comment here:
We should have a note that documents the problem in this PR, maybe the same comment:
ORGANIZER must only be set for group-scheduled events (= events with attendees
1ce96b4 to
9432a58
Compare
ORGANIZER must be the same value for all participating components - main event and its exceptions.
OrganizerHandler: Also check whether main event has attendees instead of only checking for exception attendees to decide on whether we should add ORGANIZER to the necessarily group-scheduled event.