Problems with DaviCal after Wheezy Upgrade

It’s been a while since Wheezy was released, but the problems with DaviCal started with that upgrade. I don’t know whether this is a DaviCal bug or not, maybe partly. This is just a informational note, before I’ll file a bug report (or not).

First problem was that I couldn’t add any contacts anymore (CardDAV) from OS X. A friend of mine has the same issue as he’s using my server for that. He mailed that he’s getting the following error of the Contacts app under OS X: 

[NSInvalidArgumentException] -[CoreDAVNullParser rootElement]:
unrecognized selector sent to instance 0x7f91bad6b1d0

When I looked at the webfrontend I discovered that the database of DaviCal didn’t get updated. I don’t know whether this is a general problem or it just happened to me. Anyway. Executing the proper database upgrade script delivered by DaviCal was no problem at all. Adding new contacts worked again.

But then I discovered somewhen later that my calendars on the iPhone didn’t update anymore. That was a bigger problem to solve, because it appears that it’s an IOS 6.x problem and not a DaviCal issue. Finally I found on Google this mail on the DaviCal mailing list: 

As I started using DAViCal, I created calenders with "named" paths, not these
long names, like you stated in your message. With iOS 6 this was not a good 
idea.

I created every calender new with the iOS 6 device and copied all 
calender-items to the new calendars. Was a work auf 15 minutes for me. I 
described it in a blog-post (german): 
  http://tech.blog.rana.at/2012/10/24/davical-caldav-mit-ios-6/ 
  
Not a real solution for the problem, but a workaround.

So, as linked page is in German, I’ll rephrase the “solution” here: 

The problem seems to be that the old principal path names like user/calendar or user/home do not work anymore under iOS 6. Instead you’ll need to create a new calender from your iPhone. So, just configure your calendar account as usually. You’ll end with an empyt calendar. Now create a new event in your calendar on the iPhone. This new calendar should show up under OS X (or other clients). There you can export your existing appointments to an *.ics file which you can import in DaviCal webfrontend to the new prinicipal collection. Your dates should now show up on your iPhone again. But you’ll end up with duplicate entries in iCal app under OS X. You need to define your new principal as default calendar to be able to delete your old default calendar, if that’s not possible. If everything went well, you can share your dates between OS X and your iPhone via DaviCal again. At least this worked for me. 🙂

It’s late over here, so I’ll postpone writing the bugreport for now…

Uncategorized