Thunderbird:Architecture Cleanup: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 25: Line 25:
== Using Frozen Linkages ==
== 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 [http://developer.mozilla.org/en/docs/Migrating_from_Internal_Linkage_to_Frozen_Linkage 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 [http://developer.mozilla.org/en/docs/Migrating_from_Internal_Linkage_to_Frozen_Linkage frozen linkage].  


Details:
Details:

Revision as of 18:58, 4 May 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.

Details:

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.

Details:

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.

Details:

libxul

  • 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.
  • Bug: ???
  • Owner: mscott and ?

XULRunner

Thunderbird should become a XULRunner App.

Breakpad

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