etesync / etesync-dav

This is a CalDAV and CardDAV adapter for EteSync
https://www.etesync.com
GNU General Public License v3.0
290 stars 47 forks source link

Suport the CalDAV `MOVE` operation #183

Open tasn opened 3 years ago

tasn commented 3 years ago

This is what you get when trying to do a MOVE at the moment:

Traceback (most recent call last):
  File "radicale/app/__init__.py", line 127, in __call__
  File "radicale/app/__init__.py", line 295, in _handle_request
  File "radicale/app/move.py", line 84, in do_MOVE
  File "etesync_dav/radicale/storage.py", line 576, in move
NotImplementedError

We can probably implement it internally as a create followed by deleting the original. We should just change the href if the source and destination collection are the same.

solarkraft commented 1 year ago

Lack of support for this makes organizing my events way more painful than it would need to be.

My workaround (in Calendar.app) is:

Imagine my frustration before I found out that this is the issue! Constant server errors and events disappearing. I originally thought the calendar app would implement this as a delete+create, but oh well, apparently the spec has a move event ... that ete sync doesn't support :L

solarkraft commented 1 year ago

Let me add to my workaround:

What a pain!

Edit: But only sometimes. Have I mentioned how frustrating this is?

Edit: Stuff keeps reappearing WAY after I edited it with this frustrating workaround. By the way, it's frustrating!