Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.

Deprecating DTD for localization in Firefox UI

Skip to first unread message

Zibi Braniecki (Gandalf)

Oct 24, 2019, 3:10:35 PM10/24/19
to firefox-dev, dev-platform
Hi all,

tl;dr: Please use Fluent instead of adding or changing existing DTD strings.

== DTD and Fluent ==

DTD has been used as the core localization format and API inside of Firefox
since the dawn of Mozilla, allowing us to localize our XUL and other XML

Unfortunately, DTD comes with a set of quite painful limitations, including
the so called Yellow Screen of Death which causes a crash at startup and
requires a complicated manual process by each user to recover. We’ve
recently been affected by this on beta [1].

For a couple years now, we’ve been working on a replacement for DTD - a new
localization system called Fluent [2] which (among other things) addresses
the shortcomings of DTD.

== Deprecating DTD for localization in browser chrome ==

Now that Fluent meets the performance requirements to replace DTD, we would
like to deprecate the DTD file format as a localization mechanism in

Please could you:


Avoid introducing any new DTD strings in mozilla-central.

If existing DTD strings would need to be changed, migrate them to Fluent
[3] instead of updating the message identifier in DTD.

There are a few small areas where integrating Fluent is not entirely
trivial (most notably UA widgets) and those will be exempted from the

In case you believe there are technical reasons to continue using DTD in
your project, please consult fluent-reviewers group [4], which has been
recently extended with additions of Jared Wein, Gijs Kruitbosch and Edward
Lee. They can be reached in #fluent on Slack or fluent-reviewers on

The change does not affect release or beta uplifts, since we don’t change
strings in those. ESR uplifts will be exempted from the deprecation.

== Dashboard ==

In order to visualize our progress, we recently updated our dashboard:

The new version introduces three milestones:

M1 - Removal of DTD from browser.xhtml - addresses Yellow Screen of Death

M2 - Migration of the startup path to Fluent [6]

Mx - Migration of the whole mozilla-central to Fluent [7]

Additional milestones may be added as we identify them.

Each one of these milestones will enable a set of new features for Firefox,
and deprecating DTD for localization is aiming to help us achieve them

If you have any questions, let me know!






[4] fluent-reviewers group (#fluent on Slack):


Francesco Lodolo

Jared Wein

Gijs Kruitbosch

Edward Lee

Axel Hecht

Staś Małolepszy

Zibi Braniecki




Nicholas Alexander

Oct 24, 2019, 11:29:30 PM10/24/19
to Zibi Braniecki (Gandalf), firefox-dev, dev-platform
On Thu, Oct 24, 2019 at 12:10 PM Zibi Braniecki (Gandalf) <> wrote:

> Hi all,
> tl;dr: Please use Fluent instead of adding or changing existing DTD
> strings.

This is so awesome! Congratulations to everybody who made the new system

> _______________________________________________
> firefox-dev mailing list
0 new messages