GNOME Bugzilla – Bug 564141
Evolution calendar sync import fails
Last modified: 2009-02-13 11:36:53 UTC
Goal: Synchronize calendars on two computers running Evolution by syncing both to a common (network-mounted) folder. Steps to reproduce: 1. Sync computer A to network folder (successful) 2. Sync computer B to network folder (EvoCalendar --> folder succeeds, folder --> EvoCalendar fails) Root cause: EvoCalendar's _get_object returns an iCal VCALENDAR containing a single VEVENT for each event on the calendar. However, EvoCalendar's _create_object expects an iCal VEVENT. The evolution-data-server can't parse the VCALENDAR and fails. Suggested fix: Modify EvoCalendar's _get_object to return a VEVENT instead of a VCALENDAR. See attached patch. Alternative fix: In EvoCalendar's _create_object, parse the VEVENT out of the VCALENDAR before calling evolution.ecal.ECalComponent(). I'm not familiar enough with the vobject API to do this quickly. Other considerations: The other two consumers for Events (AFAICT) are the Google Calendar and the iPod calendar. It's not clear to me what format they expect. I can't test the iPod (lack of hardware) and the Google Calendar module is disabled, assumedly for good reason.
Created attachment 124432 [details] [review] Make EvoCalendar's _get_object return a VEVENT instead of a VCALENDAR Proposed fix.
Does this, in combination with the other evo patches, work for you now? p.s. Sorry for taking so long to commit. The PhD intervened for a while...
Yes, this combination has Evo calendar, addressbook and task sync working for me. ...and don't worry about the delay - I'm a grad student myself, so I completely understand.
This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.
*** Bug 561355 has been marked as a duplicate of this bug. ***