Google has decided to change the authentication mechanism for their CalDAV calendars to OAuth, which required some changes in Lightning to accommodate.
Due to these changes, the URL to access the calendar has also changed. The old endpoint will stop working after September 16th (today!). This affects only Google calendars using CalDAV protocol.
Calendars using the Provider for Google Calendar or iCal read-only access won’t be affected.
How do I know if I’m affected?
Open your calendar’s properties by right-clicking on calendar name and check if the location starts with
https://www.google.com/calendar/dav/. If it does, you are using CalDAV and need to set up your calendar again with the new URL.
How do I set up the new calendar?
To use the new CalDAV Endpoint, you will need Lightning 2.6 and Thunderbird 24, which will be released tomorrow, September 17th. There will be a blog post on the release tomorrow, so please use the navigation to view the new post when its there to get the download links. Anyway, here are the steps:
More details on how to set up from Google can be found here. After setting up new calendar you can safely remove the old one from Lightning. This will only remove it from calendars list, your events will not be deleted from Google’s servers.
But I want it to work now!
In that case, you will have to use a beta version of Thunderbird and Lightning. You can get Thunderbird 24.0b3 here and the corresponding Lightning 2.6b2 here. Please use these versions only if you really can’t wait, once the release version is out there will be no support for beta versions.
One more thing…
Its a little unfortunate that Google is shutting down the API in coincidence with the release. I’m pretty sure a few people will blame Lightning’s new version for this (understandably, since that is the only thing they knowingly changed). This will mean we will get a few support requests covered as bad reviews, I already saw one today! If you found this blog post useful, please stop by addons.mozilla.org and give us a few stars.
Update on @googlemail.com addresses
If you created your Google account with an @googlemail.com email address, you will need to use this email address in the URL, even if you’ve switched to @gmail.com now! Otherwise it will look like everything works, until you try to add/modify events. I will notify the Google folks so they can get this bug fixed on their end.
Update: Still not working? Here is why!
Unfortunately there are two more problems. First of all, you may be experiencing an instant failure, if you inspect the logs you might see an error 400. Aside from the location change, Google has also introduced support for webdav-sync. In theory this makes the synchronization process faster, but Google does not implement the fallback mechanism we rely on. We can probably fix this on our side though by updating to a newer version of the webdav-sync draft.
Next up is a bug on our side. When the OAuth token expires, there is an error refreshing the token. I will take care of fixing this for Lightning 2.6.1
But I really need it to work now!
Ok then, I have one option left for you. For the time being you could switch to the Provider for Google Calendar, an extension that uses the Google Calendar API to connect. You will have to set up the calendar a bit differently, using the new “Google Calendar” option in the new calendar wizard and the XML address as the location URL.
Thanks to Merike Sell for drafting this blog post