inovex / CalendarSync

Stateless CLI tool to sync calendars across different calendaring systems.
MIT License
99 stars 13 forks source link

Bug: Bidirectional sync & deleted Events lead to "zombie" events #68

Closed HannesHil closed 11 months ago

HannesHil commented 1 year ago

Szenario:

  1. Create Google eventX
  2. Sync from Outlook to Meet and vice versa - EventXClone is created in Outlook
  3. Delete EventX in Google
  4. Sync a second time, depending on the order two things might happen: 4.1. Sync Outlook to Meet at first - Controller checks if EventXClone exists in Google -> no -> newEvent -> Zombie Event -> Bug 4.2. Sync Meet to Outlook at first - Controller marks event for deletion -> Event is deleted -> Intended Behavior

Ways to fix:

  1. Dont sync any events which where initially created by CalenderSync (+ config option for this?)
  2. Check if event event.Metadata.SourceID != p.sink.GetSinkID() in the controller and ignore those events?
  3. Create seperate mode for Bidirectional Syncs respecting such behavior
HannesHil commented 1 year ago

Possbile Fix implementation for Way2 https://github.com/inovex/CalendarSync/pull/67