pimutils / pimutils/vdirsyncer
Tasks are deleted by sync (even with "a wins" update rule for task calendar)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.9k
- Forks
- 185
- Avg merge
- 11h 49m
- Merged PRs (30d)
- 1
Description
I'm syncing two remote CalDAV storages, on Nextcloud and a service called Zoho. My CalDAV tasks are being deleted in Nextcloud when vdirsyncer runs. This is despite even setting nextcloud as "a wins" in the config file for conflicts. The calendar events seem to sync fine.
- Your vdirsyncer version
vdirsyncer, version 0.16.7 on Ubuntu 20.04 installed using apt
- If applicable, which server software (and which version) you're using
Nextcloud 26.0.2 with calendar App version 4.4.2
Zoho Mail Calendar
- Your Python version
$ python --version
Python 2.7.18
$ python3 --version
Python 3.8.10
- Your operating system
Ubuntu 20.04
- Your config file
[general]
status_path = "~/.vdirsyncer/status/"
#### <redacted_username_1> ####
[pair <redacted_username_1>_nextcloud_zoho_cals]
a = "<redacted_username_1>_nextcloud_cal"
b = "<redacted_username_1>_zoho_cal"
collections = [["<redacted_username_1>_nczcals", "pes", "events"]]
conflict_resolution = "a wins"
[storage <redacted_username_1>_nextcloud_cal]
type = "caldav"
url = "https://<redacted>.com/remote.php/dav/calendars/<redacted_username_1>/pes/"
username = "<redacted_username_1>"
password = "<redacted>"
start_date = "datetime.now() - timedelta(days=7)"
end_date = "datetime.now() + timedelta(days=720)"
[storage <redacted_username_1>_zoho_cal]
type = "caldav"
url = "http://calendar.zoho.eu/caldav/f55a576f7332690a4afff2682af5a52b3f8857ebba5e8fa86a4d05779d7934ddbfbf7076e13193991c60ae49669ff0a6/events/"
username = "<redacted_username_1>"
password = "<redacted>"
start_date = "datetime.now() - timedelta(days=7)"
end_date = "datetime.now() + timedelta(days=720)"
#### <redacted_username_2> ####
[pair <redacted_username_2>_nextcloud_zoho_cals]
a = "<redacted_username_2>_nextcloud_cal"
b = "<redacted_username_2>_zoho_cal"
collections = [["<redacted_username_2>_nczcals", "personal", "events"]]
conflict_resolution = "a wins"
[storage <redacted_username_2>_nextcloud_cal]
type = "caldav"
url = "https://<redacted>.com/remote.php/dav/calendars/<redacted_username_2>/personal/"
username = "<redacted_username_2>"
password = "<redacted>"
start_date = "datetime.now() - timedelta(days=7)"
end_date = "datetime.now() + timedelta(days=720)"
[storage <redacted_username_2>_zoho_cal]
type = "caldav"
url = "http://calendar.zoho.eu/caldav/81c76a403e9dd9d2b54d890c95a01f1a05d7493b0e01d6702273c660efa51fdda6df450832b2ea83588d9e9db5d49fd0/events/"
username = "<redacted_username_2>"
password = "<redacted>"
start_date = "datetime.now() - timedelta(days=7)"
end_date = "datetime.now() + timedelta(days=720)"
- Use
vdirsyncer -vdebugfor debug output. The output is sensitive, but
please attach at least the last few lines before the error (if applicable),
censored as necessary. This is almost always the most useful information.
Not applicable, there's no error
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the sync with the supplied Nextcloud and Zoho configuration, then capture the vdirsyncer -vdebug output; none is included here. Compare task synchronization with the working event synchronization and inspect how the "a wins" rule handles deletions. Done means tasks remain in Nextcloud and the behavior is covered by a reproducible test or diagnostic case.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100