22
Jul 14

Lightning 3.3 is Out the Door

I am happy to announce that Lightning 3.3, a new major release, is out of the door. Here are a few release highlights:

  • Various components have been made asynchronous, allowing for better perceived performance. This means less hanging when Lightning is busy.
  • Improved invitation processing, as well as a few new features:
    • Restrict sending invitations to newly added attendees
    • Send one invitation email per attendee, not disclosing other attendees
    • Consider default BCC and CC of configured email identity when sending invitations
    • More actions when viewing invitations, e.g. tentative accept, accepting only occurrences.
  • When accessing Google Calendar via CalDAV, the authentication dialog doesn’t constantly reappear.

There have also been a lot of changes in the backend that are not visible to the user. This includes better testing framework support, which will help avoid regressions in the future. A total of 103 bugs have been fixed since Lightning 2.6.

When installing or updating to Thunderbird 31, you should automatically receive the upgrade to Lightning 3.3. If something goes wrong, you can get the new versions here:

Should you be using Seamonkey, you will have to wait for the 2.28 release, which is postponed as per this thread.

If you encounter any major issues, please comment on this blog post. Support issues are handled on support.mozilla.org. Feature requests and bug reports can be made on bugzilla.mozilla.org in the product Calendar. Be sure to search for existing bugs before you file them.

Addons Update:

There are a number of addons that have compatibility issues with Lightning 3.3. The authors have been notified and a few first fixes are available:

  • Calendar Tweaks: This addon causes constant flashing and makes Lightning unusable. The author has been notified and has released version 6.0 which shoul fix all issues. Plase notify him in case there is more trouble.
  • Thunderbird Conversations: There is an issue with the Lightning invitations plugin. It has been fixed in one of the nightly builds and will be available as a release soon.

Other Updates:


16
Jun 14

Only 5 Weeks Until Thunderbird 31 – Testing Needed

Thunderbird and Lightning do major releases about every 42 weeks and by now there are only 5 weeks left until Thunderbird 31 will be released. Your matching calendaring extension version is Lightning 3.3. Betas for both products are available and now its up to you: we need all the manpower we can get to make sure there are no regressions and everything still works as expected. Over a million active daily users will thank you for this!

To get started, download the beta builds and follow the standard installation procedure.

Although I doubt there will be any issues, its always a good idea to back up your profile. I myself have been using each of the beta builds and haven’t run into any dataloss issues.

Here is a list of areas that have changed and you should especially look into:

  • The access method for Preferences has changed, test everything that looks like we might need to store options for.
  • Make sure disabled UI elements are only disabled if they should be.
  • Some theme changes have been made, also in Thunderbird. Lightning may look different, but if its odd or out of place let us know.
  • Cool new feature: There are new ways to navigate in the today pane.
  • A number of changes in the area of scheduling. Please make sure sending, receiving, accepting, declining and reopening invitations still works as expected.
  • There were changes to the autocompletion feature used in the attendees dialog.
  • Remote CalDAV calendars, especially in combination with Google Calendar.

There is one known issue if you use a localized version of Thunderbird and Lightning. Certain locales have not been fully translated, but are included in the beta builds nevertheless. We will fix this issue for the second beta build soon.

If you notice any issues please leave a comment here as soon as possible. The more time we have to fix the issue the better. If you have a bugzilla account (or don’t mind creating one for free) please comment on an existing bug or file a new one if needed.


30
Apr 14

Icedove and Iceowl-extension compatibility

I have noticed a few reports that Lightning 2.6.4 is not working with the Debian variant of Thunderbird, called Icedove. Together with one of our users (thanks Arie!) this was reported to the Debian package maintainers.

There are slight differences in how Icedove and Thunderbird are compiled, the result is that the Linux symbol versions required are different. The maintainers are working on fixing this, in the meanwhile all you need to do is make sure you are using only one source for the packages:

  • If you are using Icedove, make sure you install and use iceowl-extension instead of Lightning.
  • If you are using Thunderbird from mozilla.org, make sure you are using Lightning from addons.mozilla.org. You can install it into /opt if you don’t want to conflict with your Debian packaging system.

Unfortunately, this difference in compilation has cost us some negative reviews. If everything is working for you or this post has helped you to use the right versions, please show some love and write a review ♥.

 


23
Apr 14

The 2014 Google Summer of Code Students are here!

I am particularly excited to announce that this year the Calendar Project has received two slots in Google Summer of Code 2014. Both projects target our backend code. This means users won’t have a chance to complain about user interface changes and instead will be blown away by performance and interoperability improvements.

I would like to take a few minutes to introduce our awesome new students to the community, please join me in giving them a warm welcome!

Reid Anderson: Improve Calendar Provider Backends

This project is about performance and stability for our calendar storage. Here is what Reid has to say:

I have been a student at the University of Minnesota since 2012 studying Chemistry and Computer Science. Outside of the classroom, I spend a lot of my time both watching and playing a variety of sports. I also enjoy reading, talking to friends, or playing a quick game of Civilization. I heard about Google Summer of Code before I entered college, and participating in the program had always been a goal of mine.

I was introduced to the Mozilla community when I started submitting patches to Songbird, a desktop media manager built on the Mozilla framework. Throughout the entire community I saw a consistent message of an open web powered by open technology and open software. This is something that I am excited to be a part of, and I am looking forward to contributing. My project is to improve the cached mode for online calendar providers to the point where it can be used as the default setting. This should allow Lightning to function effectively in an offline environment, while also bringing significant performance improvements. Hopefully these will be a useful contributions to the community, and I’m looking forward to getting started.

Isn’t that wonderful? I’m particularly excited about the performance improvements this will bring. Further project updates will be done on his blog and we will of course be posting major updates here too.

Malintha Fernando: Update Invitations to the latest Specification

This project will not only improve our invitations support, it will also guard us from future regressions through more tests. Here is an excerpt from Malintha’s blog post:

My name is Malintha Fernando and I am a student developer from Sri Lanka, currently studying at University of Moratuwa. I started contributing to Mozilla some months back (Still got a lot to learn) as my first contribution in open source and glad to be a part of the Lightning project in GSoC 2014.

The objective of this project is to improve Lightning’s scheduling system by updating the available features to the latest RFC specifications. As we know most of the Lightning’s implementation were done referring to the draft version 4 of the RFC 6638, there are some features lagging behind from the final RFC document.

Do you remember the mess we had when 2.6.x was released? At least one of the bugs we had to fix quickly was a regression in the invitations code. With Malintha’s help this won’t happen again!Whats next?According to Google, we are currently in the “Community Bonding Period”. This means we have a little time to set things up and make preparations. Coding officially begins on May 19th. You can follow progress on the projects as mentioned above, I will also blog about major updates here as we get closer to completion. Lets have some fun with this and continue to make Lightning better. Its about time!


12
Dec 13

Finally, A New Website!

This is the moment I have been waiting for so long! I can’t say this big enough because I am so excited:

Check out this awesome:

new-website

The new site is clear and concise. Not too many links, all important links on one page. The download button gives you the latest version directly from addons.mozilla.org.

There are some features still lacking that we will be adding in later, it was more important to just get this thing out in the open first. The holiday calendars page is still missing. Ideally the new holiday calendars area will auto-generate itself from the existing holiday files. We also wanted to show the most recent blog headlines.

The new site is part of bedrock, Mozilla’s shiny new website framework. This means we get a lot of stuff for free, one of them is localization. I haven’t found out how this works yet, but it will be possible to translate the page into any language.

Is there any information you are missing? Let us know what you think!


12
Dec 13

Lightning 2.6.x Version Recap

As you may have read in the previous post, there have been quite a few issues with Lightning 2.6.x. I wanted to explain what happened and what we can do to avoid these issues in the future.

The Lightning build process is closely coupled with Thunderbird. Every time Thunderbird does a release, we get builds for Lightning for free. This means we mostly depend on them doing a release, otherwise I have to patch the final builds manually. This is a little more work. Luckily, each of the releases between 2.6 and 2.6.4 have been done together with a Thunderbird build.

Google Calendar Issues via CalDAV

Just before Lightning 2.6 was released, we made some last minute changes to accomodate for the fact that Google Calendar had changed their CalDAV URL. Not only that, they also implemented a specification for faster synchronization of CalDAV. We already supported this specification, but only an older version. A quick fix was done to take care. In total, were some authentication issues and an error loading calendars. We knew we had to release a 2.6.1, but we didn’t know it had to happen so fast…

Version compatibilitiy issues

When Thunderbird 24.0.1 was released, Lightning 2.6 did not work on Linux. The reason for this was a regression in the Mozilla Platform around Thunderbird 23. The binary component we have was built with a specifc compiler flag with a parameter that was too strict. It bascially said “this binary component is only for version 24.0.1″. The fix was easy, change it to “this binary component is for version 24.*”, but it took a while for that fix to be completed and admitted to all branches. Lightning 2.6.1 was quickly released as a workaround specificly compatible to Thunderbird 24.0.1, Lightning 2.6.2 was needed for Thunderbird 24.1.0.

Another problem why this was so hard to figure out for users is that some Linux distributions decided to skip the minor releases and only do 24.0, 24.1.0, 24.2.0 and so on. There were complaints because the latest Lightning version wasn’t working, when 24.1.1 was missing from the distribution repositories. We still needed to release consequent Lightning versions though, otherwise users using the stock builds would complain.

Lightning 2.6.3: Issues with CalDAV

Unfortunately, one of the patches for 2.6.1 had an error in it. We decided there needs to be a quick fix, and it was just in time for Lightning 2.6.3. The binary compatibility bug had been fixed by now, so this should also be the first version that is compatible to any version of Thunderbird 24.1.1 and up.

Lightning 2.6.4: Yet another one

Now this is the release that really annoyed me. First of all, I did a bad job on one of the patches. The other one was a minor issue with servers that don’t have a certain XML element in their response. These are the kinds of issues we could have easily figured out before the release with more and better unit tests. We might have even saved another release.

Conclusion

We probably could have known about all of these issues beforehand if we had tests to catch them. Just running the any of the tests using the build machinery would have caught the binary compatibility issue. If we had at least some manual tests to test CalDAV servers, we could have started them for a few public demo servers and caught all of the CalDAV regressions. Both of this has been on my list for quite some time, but given all the other things coming up I never got around to it.

Integrating the tests with the build system is unfortunately something only someone with Mozillians trust can do, but if you want to help us write some unit test, that would be marvelous. The cool new thing to use is promises and tasks, which allow writing really easy to read asynchronous code. I have some demo code thats not quite working but is ready for someone to pick up.

If you want to help in some other way, please contact me! Even if you are not a developer, there is a lot that can be done for someone with a little initiative.

 


13
Oct 13

Using Lightning 2.6.* on Linux? Be sure you are using the exact compatible Thunderbird Version

As you may have noticed, Lightning is no longer working with Thunderbird 24.0.1. This is totally unexpected for us, it seems Thunderbird 24.0 and 24.0.1 are not binary compatible. We will be releasing Lightning 2.6.1 this week to fix the issue and afterwards find out how this could have happened.

If you are using Lightning 2.6, please downgrade to Thunderbird 24.0 for now and you will regain access to Lightning and your calendars.

I’m sorry for the inconvenience. Here is the compatibility table:

Thunderbird Version Lightning Version
Thunderbird 24.0 Lightning 2.6
Thunderbird 24.0.1 Lightning 2.6.1
Thunderbird 24.1.0 Lightning 2.6.2
Thunderbird 24.1.1 Lightning 2.6.3
Thunderbird 24.2.0 (unreleased) Lightning 2.6.3 and up

Update 1: This seems to be a Linux-only issue. Windows and Mac users can safely upgrade to Thunderbird 24.0.1!

Update 2: You can get the English version of Thunderbird 24.0 for Linux here. For other languages, please see the release directory on the ftp server.

Update 3: Lightning 2.6.1 is the version compatible to Thunderbird 24.0.1. To date it has not been reviewed by the Mozilla Addons Team, but you can still get it manually using the Other Versions page.

Update 4: Lightning 2.6.1 is now public. On Linux, it is compatible ONLY with Thunderbird 24.0.1, so go ahead and upgrade now.

Update 5: To be more clear: If you are using Thunderbird 24.0 on Linux you MUST continue to use Lightning 2.6. If you are using Thunderbird 24.0.1 on Linux, you MUST use Lightning 2.6.1. Thunderbird 24.1.0 (no typo) will be released soon, you MUST use the upcoming Lightning 2.6.2 here.

Update 6: If you cannot use the newer Lightnig versions yet and want to disable addon updates: Go to the Addons Manager → right click on Lightning → Show More Information → Disable Automatic Updates.

Update 7: Thunderbird 24.1.0 (not .0.1) has just been pushed to the mirrors. On Linux you will need Lightning 2.6.2 together with it. I have heard from some packagers for the Linux distributions that, in contrary to 24.0.1, this version will be made available. If you need Lightning 2.6.2 now, you can get it from the Other Versions page until it has been reviewed.

Update 8: I was now able to set up the version compatibility correctly. If all goes well, Thunderbird 24.0 users should NOT be getting upgrades to Lightning 2.6.1 anymore, all other versions should work correctly too.

Update 9: Updated for 24.1.1 release. The problems are now going away :) I will recap as soon as I get to it.


22
Sep 13

Lightning 2.6 has been released

I am happy to announce the release of Lightning 2.6, compatible to Thunderbird 24 and Seamonkey 2.21. The release went live on Tuesday, September 17th and is the next major release after Thunderbird 17 and Lightning 1.9. If you are using the Provider for Google Calendar, you will also have to upgrade to version 0.25.

You may have not received the updates automatically because of server side throttling, you can either wait until the update occurs, force checking for updates via the About Thunderbird dialog, or grab them manually:

Before upgrading, be sure to backup your profile so you can restore in case something goes wrong unexpectedly.

The release notes can be found on addons.mozilla.org. An important note for users of Google Calendar via CalDAV (not via Provider for Google Calendar): Due to a server side change at Google, you must update the URL of the calendar, as described in this post.

Should you be experiencing any issues, here are some steps that might resolve them:

  • Make sure that you are running Thunderbird 24 or SeaMonkey 2.21.
  • Redownload and install Lightning using the download links above.
  • If you are using the Provider for Google Calendar make sure you upgrade to version 0.25
If you are experiencing issues (Lightning not installing or the calendar not working at all), try removing the Lightning addon and doing a fresh install. Your calendar data will be kept intact, as it is contained in your profile. To be sure, create a profile backup as described above.

If you enjoy this update or want to thank us for the hard work we have done, feel free to leave a review at addons.mozilla.org. If you have issues upgrading, please don’t misuse the reviews. Leave a comment here and I’ll try to get back to you soon! If you are sure you have found a bug, you can also search for it on bugzilla or file a new one if it doesn’t yet exist.


16
Sep 13

Google is changing the Location URL of their CalDAV Calendars

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:

  • Download Thunderbird 24 and install Lightning 2.6
  • Open the new calendar dialog (File → New → Calendar)
  • Add a new remote calendar (On the Network → CalDAV)
  • As a location enter the following, be sure to replace your email address:
    https://apidata.googleusercontent.com/caldav/v2/your-email-address/events

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


29
Aug 13

Lightning 2.6b2 has been uploaded, some locales broken

Lightning 2.6 is due on September 17th and will be a major release. The last stable relase was Lightning 1.9 and the only testing that has been done since is a little testing on the beta channel. I say this is not enough!

One problem we have is that a handful of locales are broken (only one bug report, by the way!). This is mostly due to some changes we had to undertake regarding the l10n dashboard, making it hard for localizers to figure out where to sign off.

If you can read a language other than English, please take a few minutes for the following steps:

  1. Download Lightning 2.6b2 from addons.mozilla.org together with Thunderbird 24
  2. After starting the app, check the error console for anything that looks bad. Warnings are probably ok. Clear the error console.
  3. Open every dialog you know of (print, event, task, summary, preferences, calendar properties, …). Make sure it looks normal.
  4. Set up a remote calendar of your choice, make sure you can connect.
  5. Check the error console again if something alarming was added.

You can of course still help if English is your only language. Please do a few tests to make sure everything works. You might as well upgrade your original Lightning installation, because this is what you will receive in about 3 weeks anyway. The earlier we find issues, the higher the chance we can fix it before it reaches everyone.

Thank you for your support!