comm-central branch date set

We’ve now set a date of Thursday 22nd October for branching comm-central. This will create a releases/comm-1.9.1 repository that will become the stable branch for Thunderbird 3, SeaMonkey 2 and Sunbird/Lightning 1.0.

Bug 522211 is tracking the work on setting up the repository and the infrastructure around it.

I’ll be providing more details as we go, however do note that we’ll be setting the repository up early and I’ll be keeping it synchronised with comm-central – so please don’t push to the new one until we give the announcement after the branch.

New Address Book Documentation

Some of you may have already seen this on Jen’s documentation blog. For the last couple of weeks I have been finding the odd few minutes here and there to write some documentation on the address book interfaces and examples of how to use them. I’m hoping this will be useful to extension developers upgrading or writing extensions to Thunderbird 3.

The documentation and examples aren’t as extensive as the could be, but hopefully will give some useful starting points. If there’s something you think is missing, please add it to the page (or the talk page if you don’t know the solution) and help us improve it for everyone.

Dropping in-tree support for the Palm Synchronisation Extension

The comm-central tree currently includes an extension that is known as Palm Sync and provides address book synchronisation support with Palm devices. The extension was shipped with SeaMonkey 1.1 and there was a version posted on addons.mozilla.org for Thunderbird 2 but that version isn’t available on AMO anymore.

It has become clear that maintaining the Palm Sync extensions doesn’t make sense to do in-tree any more, because the work/benefit ratio is too low.  Specifically:

  • There is no active maintainer for the Palm Sync extension, meaning that the work of maintaining it falls on people who should be spending as much of their time as possible making the entire platform better.
  • Palm Sync is a binary extension, closely linked to the TB sources. Due to the close linking, if we re-factor how the address book works (even the internal workings of contacts), we have to do work to update palm sync. This wouldn’t be too bad, except that palm sync requires a special version CDK to build it, and then there isn’t an easy way for developers to test it without palm devices. Whilst we could buy these we’d have to make sure that any address book developer had access to one, or rely on one or two people testing patches etc.

From a forward-looking point of view, we want to be able to expand the possibilities for device synchronisation. The palm sync code, unfortunately, is very specific to the palm sync interface, and we believe it is not a suitable base for that to happen. In-between times, we want to be moving forward various areas of the address book and improving it for users. Trying to maintain Palm Sync alongside that, I believe, will slow us down.

Therefore we have taken the decision to drop palm sync support from comm-central. We will be archiving the code in its current state, and if anyone would like to take it over and maintain it, I will be happy to provide support to get them set up (once we’ve archived it I’ll update this post with the archive location) – just drop me a line.