Pi’s Blog

My blog about Thunderbird and GSoC 2008

gContactSync Versions 0.1.3 & 0.2.0a1

Version 0.1.3

Basic Features

  • Synchronizes contacts between Google Mail and Mozilla Thunderbird (2 or 3, including Thunderbird 3.0b1 and the trunk build [3.0b2pre] as it is today)
  • Can synchronize several accounts with their own address books
  • Adds attributes and “types” for phone numbers and screennames to Thunderbird
  • Customizable with a preferences dialog
  • en-US and es-ES locales


  • 20188 Card Dialog overlay is broken on trunk builds
  • 20169 Extra attributes should be disabled for read-only cards
  • 20152 ‘TypeError: iter.first is not a function’ in Thunderbird 3
  • 20145 Error: document.getElementById(“syncExtended”) is null – options.js Line: 49
  • 20389 Values with only spaces should be treated as empty

Known Bugs

  • 20153 Groups containing contacts without email addresses break in Thunderbird.  Please be careful if you have any contacts without e-mail addresses.  Until 0.2.0, please do not put them in a group other than the pre-defined groups by Google (My Contacts, Family, Friends, & Coworkers)


Version 0.2

Google has released an updated and improved API for obtaining and modifying contacts that will be used in version 0.2 of gContactSync.

You can download it here, but I rewrote the most important code and there may be bugs I haven’t found in it yet.  I would only advise those who have hundreds or thousands of contacts and receive the “Unresponsive Script” warning to try it.  It has a fix for Bug 20153 if you encounter that.

Current Features

  • All the features of 0.1
  • Duplicates (multiple contacts with the same e-mail address) are allowed
  • Much faster synchronization
  • Only US English (en-US) until I finish adding features and strings

Planned Features

  • More locales
  • Customization of how addresses are synchronized
  • Default groups are enabled (Family, Friends, Coworkers) as mailing lists in Thunderbird
  • My Contacts and suggested contacts are now separated to an extent.  All contacts will appear in the main address book, and each group (My Contacts, Family, Friends, Coworkers, and any custom group) has a corresponding mailing list in Thunderbird.
  • Let me know what else you would like, but I can’t promise anything
  • Maybe addons.mozilla.org?

Upgrade instructions to 0.2.0

  • In the address book, synchronize contacts one last time.
  • Rename the synchronized address book(s), this is just so you have a backup of your contacts.
  • In the main window, go to Tools -> Add-ons -> gContactSync -> Options/Preferences
  • In the Accounts tab, select one account at a time in remove them.
  • Install the new version and restart Thunderbird.  There is no need to remove the previous version first.
  • Open the Address Book window and fill in the information for your first account.

January 18, 2009 Posted by | GSOC, thunderbird | 2 Comments

Seven Things

I’ve been tagged by sid0, fellow GSoC 2008 student

I have Internet access once again (until my ISP grows tired of me downloading so much source code for Gentoo)!

The rules.

  1. Link back to your original tagger and list the rules in your post.
  2. Share seven facts about yourself.
  3. Tag some (none? 🙂 ) people by leaving names and links to their blogs.
  4. Let them know they’ve been tagged.

Seven Things

  1. Not too many people know this, but I play the bass guitar for fun as of last summer.  I plan on it just being a hobby, but I can play several songs well including Iron Man (once my fingers are warmed up for the solo)
  2. I am on an internship in Minnesota but do not have a car.  As a result I walk when it isn’t below 0 (all this last week) and take the bus a lot.
  3. I take school and grades very seriously and barely hung onto my 4.0 this semester after some setbacks
  4. I survived for more than a week without Internet access in my new apartment
  5. Despite doubts from relatives and friends, I can cook (I did work in a restaurant for years), do dishes (I was a dishwasher at first), clean (I am a neat freak), and survive on my own without spending all day programming
  6. I’ve known about 250 digits of pi since 8th grade.  It started in 6th grade when I saw about 25 digits of pi in my math book and realized that I had memorized them after just glancing at the page.  I haven’t decided if I should try to break 1000 or not.
  7. I’m a big open source fan, especially after Google Summer of Code 2008, although I had been using Ubuntu for years and just started with Gentoo (now my main OS on my desktop and notebook) before then.

I won’t tag anybody at the moment since I’ve been out of the game for a while and most people I would tag have already been tagged afaik.

January 17, 2009 Posted by | Uncategorized | 2 Comments

No Internet access for a while

I recently moved to Minnesota for an internship and I’ve been having some trouble getting an Internet connection even though I ordered it far in advance.  I’ve been waiting about two weeks now, so hopefully I’ll get it soon.a

I have basic access with my phone, but very limited bandwidth and I cannot type well with it, so if you e-mail me or the list, replying might take some time, especially when I can’t try to duplicate bugs.

I’m at the library now (free wi-fi, but only HTTP and HTTP over SSL seem to be allowed), but it is too far to walk so I have to take the bus on Saturday.

I’ve fixed what bugs I could, and started work on version 0.2.0, which works with the new and improved API from Google (see Bug 20352 for progress).  Since multiple contacts with the same e-mail address are allowed in the new API, there should be a performance boost.  I also hope to make more speed improvements.

The one thing holding me back from releasing 0.2.0 is Bug 20153 since mailing lists with contacts that may not have e-mail addresses are essential for taking advantage of the new API.

I have a version with some bug fixes (should work on trunk as it was when I had an internet connection) that will probably appear in 0.1.3 (unless I fix bug 20153 soon), but I don’t want to release it when I have no way of testing it or communicating.

January 10, 2009 Posted by | Uncategorized | 1 Comment