ICS 2-Way Sync Problems

Need help with VueMinder Pro or Ultimate? Ask your questions here.
GJS
Posts: 8
Joined: Fri Apr 02, 2021 4:05 pm
Location: Massachusetts, U.S.A.

ICS 2-Way Sync Problems

Post by GJS » Mon Apr 12, 2021 5:38 pm

I tried to set up Sync with file or URL (2-way), using ICS files on my local desktop PC, selecting sync frequency Automatically (as specified in the documentation). The drive is shared, and my laptop maps a drive letter to it. To prevent caching issues I set:
  • Desktop Share Options: No files or programs from the shared folder are available offline.
  • Laptop Mapping Options: net use H: \\<Desktop>\C /writethrough
The arrangement basically worked:
  • Events created by typing into a time slot in Day or Week view appear on the other PC, usually pretty quickly.
  • Events modified either by the Event Editor or by dragging an event to a different time slot in Day or Week view update on the other PC, usually pretty quickly. Same for dragging a selection of multiple events together.
Other actions showed unexpected behaviors. Sometimes a newly created event on one PC did not appear on the other PC. Sometimes a deleted event was not removed on the other PC. Sometimes it mysteriously reappeared on the PC where it was deleted. Sometimes a duplicate appeared.

I spent several afternoons testing 2-Way Sync. On both desktop and laptop, I checked ICS file mod times (using dir), and checked ICS file contents using a text editor (gvim). In all cases, when an ICS file was modified on one PC, the mod time and contents looked the same on the other PC. I'm confident that my problems are not caused by Windows file sharing.

Eventually I narrowed down the following consistent behaviors:
  1. If an event is created using the Event Editor, then the new event does not appear in the local ICS file unless I manually sync the calendar, or some later edit triggers a sync. Until that sync, the the ICS file is incorrect.
    .
  2. If a modified ICS file includes an event deletion and some other change, then the PC syncing from that file ignores the deletion(s), and the "deleted" event(s) remains in view. In this case the VueMinder view is incorrect. One example is the ICS file described in A, containing an addition and a deletion. Another example is an ICS file with multiple deletions, produced by selecting multiple events and deleting them as a single action.
There may be other problems. For example, I have not found a sequence of actions that creates a duplicate.

Test Case

Here is the sequence I used to check that these behaviors are consistent. Reddish text indicates error conditions.

On Both PCs:

1. Create an empty event calendar with 2-Way Sync to a shared ICS file.

On PC 1 (Desktop, in this example):

2. Create Event 1 by typing into a Week View time slot:
  • Event 1 appears in Desktop Week View.
  • Event 1 appears in ICS file.
  • Event 1 appears in Laptop Week View.
3. Create Event 2 via New Event and Event Editor:
  • Event 2 appears in Desktop Week View.
  • Event 2 is MISSING from the ICS file (problem A).
  • Event 2 is MISSING from Laptop Week View.
4. Delete Event 1:
  • Event 1 is gone from Desktop Week View.
  • Event 1 is gone from the ICS file.
  • Event 2 is now in the ICS file.
  • BOTH Event 1 [deleted] (problem B example 1) and Event 2 appear in Laptop Week View.
On PC 2 (Laptop, in this example):

5. Sync the calendar:
  • BOTH Event 1 [deleted] and Event 2 appear in the ICS file.
  • BOTH Event 1 [deleted] and Event 2 appear in both PCs' Week Views.
The two PCs and the ICS file are now consistent, but erroneously include Event 1 [deleted].

6. Select both Event 1 and Event 2, and delete them:
  • Both events are gone from Laptop Week View.
  • Both events are gone from the ICS file.
  • Both events REMAIN VISIBLE in Desktop Week View (problem B example 2).
I did not try Assign to Calendar with multiple events selected. Presumably that produces deletions in one ICS file and additions in the other ICS file. It would be good to verify that all those changes sync correctly.

Workaround

For now I have switched my calendars from Sync to Publish. When I need to travel with the laptop, I copy VueMinder\Data\*.bin to the VueMinder USB directory on the laptop, and copy them back on return. It works, but does not allow the desktop and laptop PCs to have different sets of calendars.

Version Information
  • VueMinder Pro (Trial) — Used for this testing
  • VueMinder Ultimate USB — Current license
  • Windows 10 Home 20H2, 64-bit — Dell XPS 8900, 3.4 GHz, 16 GB
  • Windows 10 Home 2004, 64-bit — ASUS Transformer Mini, 1.44 GHz, 4 GB
Conclusion

The big question is whether these problems are reproducible. Please let me know what you think, and whether you need any further information.

GJS
Posts: 8
Joined: Fri Apr 02, 2021 4:05 pm
Location: Massachusetts, U.S.A.

Re: ICS 2-Way Sync Problems

Post by GJS » Mon Apr 12, 2021 10:14 pm

Should have said:
  • VueMinder Pro 2021.01 (Trial) — Used for this testing
  • VueMinder Ultimate USB 2021.01 — Current license

User avatar
VueSoft
Dan Chartrand
Posts: 3929
Joined: Sat Aug 23, 2008 12:39 am
Location: St. Louis, Missouri, USA
Contact:

Re: ICS 2-Way Sync Problems

Post by VueSoft » Mon Apr 12, 2021 11:16 pm

Hi GJS, thank you for the feedback. Behavior (A) has been corrected for the next release. I'll investigate behavior (B) and will post a reply when I have an update.

In the meantime, there are other (better) options for syncing calendar data between your computers. For example, you could sync through Google Calendar, or you could install MySQL Server as described here:
https://www.vueminder.com/sharing.php
Dan Chartrand, Founder
VueSoft LLC | St. Louis, Missouri, USA

Post Reply