Works for me now as well again
Oliver
I’m using the latestest DAVDroid version (Playstore, payed) with a Tine 2.0 Community Edition (latest version).
CalDAV and CardDAV syncing apparently works fine both ways, automated and manually.
Except when I mark a task as done in the Tine 2.0 web UI: That task will still be marked as undone in the tasks app (I use OpenTasks).
Checking a task as done on the phone and syncing correctly results in the task being marked as done in the web UI.
Debug info:
https://paste.fedoraproject.org/paste/bQgxvAlbUSoiQyqDUxeZ-Q#
In our tests, syncing tasks with STATUS:COMPLETED
works as expected.
Does this work with other clients? Maybe it’s a Tine problem.
It works with CalDAV Sync (which has other unadressed issues).
I’d be glad to feed any further data required to resolve this, if you guide me how to retrieve them.
Can you provide a publicly accesible test account so that I can try?
@rfc2822 I can give you an account. Can I send you the credentials via chat or any other way?
Thanks for the test account, which I could use to reproduce the problem. When marking a task as completed in Tine, it sends an invalid VTODO:
BEGIN:VCALENDAR
...
BEGIN:VTODO
UID:9a702d11179f789746f83c4d67aeb2bfd3b6f511
...
!!! COMPLETED;TZID=Europe/Berlin:20171025T184600 !!!
STATUS:COMPLETED
...
END:VTODO
END:VCALENDAR
ical4j (the iCal parser used by DAVdroid) can’t parse this:
10-25 18:46:39.172 8278-8296/at.bitfire.davdroid:sync E/davdroid: [syncadapter.TasksSyncManager] Received invalid iCalendar, ignoring
EXCEPTION at.bitfire.ical4android.InvalidCalendarException: Couldn't parse iCalendar resource
at at.bitfire.ical4android.Task$Companion.fromReader(Task.kt:70)
at at.bitfire.davdroid.syncadapter.TasksSyncManager.processVTodo(TasksSyncManager.kt:164)
at at.bitfire.davdroid.syncadapter.TasksSyncManager.downloadRemote(TasksSyncManager.kt:128)
at at.bitfire.davdroid.syncadapter.SyncManager.performSync(SyncManager.kt:155)
at at.bitfire.davdroid.syncadapter.TasksSyncAdapterService$SyncAdapter.sync(TasksSyncAdapterService.kt:55)
at at.bitfire.davdroid.syncadapter.SyncAdapterService$SyncAdapter.onPerformSync(SyncAdapterService.kt:85)
at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:272)
Caused by: net.fortuna.ical4j.data.ParserException: Error at line 28:Cannot set timezone for UTC properties
at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:158)
at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:198)
at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:178)
at at.bitfire.ical4android.Task$Companion.fromReader(Task.kt:68)
at at.bitfire.davdroid.syncadapter.TasksSyncManager.processVTodo(TasksSyncManager.kt:164)
at at.bitfire.davdroid.syncadapter.TasksSyncManager.downloadRemote(TasksSyncManager.kt:128)
at at.bitfire.davdroid.syncadapter.SyncManager.performSync(SyncManager.kt:155)
at at.bitfire.davdroid.syncadapter.TasksSyncAdapterService$SyncAdapter.sync(TasksSyncAdapterService.kt:55)
at at.bitfire.davdroid.syncadapter.SyncAdapterService$SyncAdapter.onPerformSync(SyncAdapterService.kt:85)
at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:272)
Caused by: java.lang.UnsupportedOperationException: Cannot set timezone for UTC properties
at net.fortuna.ical4j.model.property.UtcProperty.setTimeZone(UtcProperty.java:95)
at net.fortuna.ical4j.data.CalendarBuilder.updateTimeZone(CalendarBuilder.java:353)
at net.fortuna.ical4j.data.CalendarBuilder.access$300(CalendarBuilder.java:68)
at net.fortuna.ical4j.data.CalendarBuilder$ContentHandlerImpl.parameter(CalendarBuilder.java:278)
at net.fortuna.ical4j.data.CalendarParserImpl$ParameterParser.parse(CalendarParserImpl.java:367)
because COMPLETED
is defined as an UTC property:
[https://tools.ietf.org/html/rfc5545#section-3.8.2.1]
Property Name: COMPLETED
Conformance: The property can be specified in a “VTODO” calendar component. The value MUST be specified as a date with UTC time.
So:
Reported to the Tine 2.0 tracker including backlink:
https://forge.tine20.org/view.php?id=13582