Thunderbird:Architecture Cleanup

From MozillaWiki
Jump to: navigation, search
From 2007

There are several architecture / cleanup changes we need to make to mailnews in the mozilla 1.9 time frame.

Remove nsFileSpec

Mailnews still uses nsIFileSpec / nsFileSpec along with some related classes. These classes are part of xpcom_obsolete and need to be re-written to use nsILocalFile equivalents.

Removing nsFileSpec allows us to remove xpcom-obsolete from the mozilla repository and makes it possible to do some of the other tasks like using frozen linkages.


  • Bug: bug 33451
  • Owner: bienvenu
  • Status: Done!

The Great Mailnews String Roundup

In order to move to frozen linkages, we can no longer use nsXPIDLStrings. We need to convert these to nsString equivalents. While doing this audit, we're also going to try to convert many of the string parameters in the mailnews interfaces to use AString/ACString.


  • Documentation: Thunderbird:CodeCleanup
  • Bug: bug 379070
  • Owner: mscott (I could use extra help cleaning up strings, it's fairly straight forward work that can be divided up, just a lot of it!)
  • Status: Done 2008-11-04
  • bienvenu has volunteered to do the imap directory

Using Frozen Linkages

Thunderbird needs to move to using libxul and eventually XULRunner. Before we can do that, we have to convert all of mailnews to use frozen linkage.


  • Bug: bug 377319
  • Owners: mscott and prasad
  • Status: Done 2010-07, though several "Depends on" bugs remain open


  • After porting Thunderbird to using frozen linkages, it should be a short step to make Thunderbird use libxul. This is a requirement before we can move to XULRunner.


Thunderbird should become a XULRunner App.

  • Bug: bug 306324
  • Owner: mscott and ?
  • Status: not a blocking bug ("there is no significant need/benefit to ship Thunderbird in that configuration")


We're going to be replacing the crash reporting tool (Talkback) Thunderbird currently uses with the Breakpad.