On 11/11/2013 9:23 AM, Henri Sivonen wrote:
We are building and shipping character encoding converters that are
dead code in Firefox but that are used in Thunderbird. Considering the
Firefox binary size, it seems like a bad idea to ship to dead code in
Firefox.

Currently, this includes the encoders and decoders for UTF-7 and the
IMAP modified UTF-7. However, as
https://bugzilla.mozilla.org/show_bug.cgi?id=863728 and
https://bugzilla.mozilla.org/show_bug.cgi?id=805374 get fixed, many
more encodings will fall into this category.

Let me make a few things clear. First, as far as I know, no one cares about UTF-7. That can probably be removed with no harm done to anyone. IMAP modified-UTF-7 is used in exactly two places: the IMAP fakeserver and the IMAP protocol. I believe measures were taken several years ago to prevent the use of IMAP modified UTF-7 for use on the web, so it can only really be used by people calling XPCOM charset APIs manually.

The impact of other charsets are unknown. It is my belief that they could be removed from Thunderbird with little or no wider impact. Unfortunately, I do not have solid data to back this claim up. The reality of Thunderbird development is such that, if this belief does not in fact ring true, we would not find out until the next ESR version is released. The only way to surely get this feedback faster is to add telemetry probes to the current ESR branch and see which encodings are being used. If I had to make a decision, I would prefer to kill these probably-dead charsets rather than maintain them in comm-central, although both of these options are lower value to me than "keep the charsets in mozilla-central such that we could add them back in with a build-time switch if we need to."
By far the easiest solution would be leaving the code in m-c but
#ifdefing it out of Firefox builds. Is there a compelling reason not
to do so? If there is no compelling reason against #ifdefing it out in
m-c, what's the right variable to #ifdef on (needs to work in
moz.build and the preprecessor)?

Actually, I believe you need to keep the x-imap4-modified-utf7 converters in B2G, if you don't want to break Gaia Email's tests. They use the fakeservers as well, which specifically use this charset.

--
Joshua Cranmer
Thunderbird and DXR developer
Source code archæologist

_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to