So calendar sync appears back to normal on OC web interface, as well as android calendar. However when i turn the sync option on for tasks in DAVdroid, it appears that recurring events dissappear from Thunderbird. I have 5 calendars currently synced, and my calendar that has most of my entries was missing several or maybe all items that I have set to repeat every weekday. Any ideas, is this OpenTasks doing, or what? I understood that OpenTasks did not support recurring tasks, but it shouldn’t make them or events disappear unless they are modified from within OpenTasks. Point me to any relevant logs you may need and I’ll try to figure out how to get them. This has been pretty frustrating as I am using this calendar for work and personal. So the original issue of this post is fixed, should this be posted as another topic? Thanks.
[iCloud] CardDAV: wrong MIME type for 412 Precondition failed with XML description
For reference and transparency: We have created this report on Apple Bug Reporter on 12 Oct 2018 here: https://bugreport.apple.com/web/?problemID=45222051
When iCloud send 412 Precondition failed on an invalid sync-token, it uses “text/plain” instead of “application/xml” MIME type for the XML error description.
Steps to reproduce:
- Send an HTTP REPORT sync-collection [https://tools.ietf.org/html/rfc6578#section-3.2] request with an invalid (outdated, etc.) sync-token to iCloud:
REPORT url=https://p59-contacts.icloud.com/xxxx/carddavhome/card/ <?xml version='1.0' encoding='UTF-8' ?><sync-collection xmlns="DAV:"><sync-token>this-is-invalid</sync-token><sync-level>1</sync-level><prop><getetag /></prop></sync-collection>
Server responds with 412 Precondition Failed and valid-sync-token XML precondition element [https://tools.ietf.org/html/rfc6578#section-3.2]
<-- 412 Precondition Failed Server: AppleHttpServer/2f080fc0 Date: Fri, 12 Oct 2018 10:17:59 GMT Content-Type: text/plain; charset=UTF-8 Connection: keep-alive X-Apple-Jingle-Correlation-Key: xxxxxxxxxxxxx apple-seq: 0 apple-tk: false Apple-Originating-System: UnknownOriginatingSystem X-Responding-Instance: carddav:15900201:st42p59ic-tyfb13213201:8001:1819B41:51222b91b Via: xrail:st13p00ic-zteu25283601.me.com:8301:18H64:grp62 Strict-Transport-Security: max-age=31536000; includeSubDomains; via: icloudedge:br30p01ic-zteu03012201:7401:18RC550:Berlin X-Apple-Request-UUID: xxxxxxxxxxxxxxxx access-control-expose-headers: X-Apple-Request-UUID access-control-expose-headers: Via <?xml version='1.0' encoding='UTF-8'?> <error xmlns='DAV:'> <valid-sync-token/> </error>
As you can see, the Content-Type is “text/plain; charset=UTF-8”, although it should be application/xml or text/xml [https://tools.ietf.org/html/rfc4918#section-8.2].
This causes clients like our software DAVdroid to
- not parse the response as XML, so
- that valid-sync-token is not recognized as the reason why the request has failed, so
- DAVdroid does NOT retry without sync token, but aborts with an error message.
- So the sync has failed with an error message.
Same response, but with