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

Changes to how we localize Firefox - one repository to rule a hundred repositories

12 views
Skip to first unread message

Axel Hecht

unread,
Sep 7, 2017, 4:19:14 PM9/7/17
to Firefox Dev
Hi,

tl;dr: We'll be using a single French, German, Slovenian localization
across all of mozilla-central, -beta, -release, -esr-*, starting with
57. This change will ride the trains.

We call it "cross channel localization", or x-channel in short.

How does that work?

We're creating an artificial repository containing the strings from
mozilla-central and comm-central. This will expand to contain also the
strings on -beta, -release, etc, as the change rides the trains. This
will be one repository, with a single head. See
https://hg.mozilla.org/users/axel_mozilla.com/en-US for a current draft.

We'll use our existing workflows to create localizations for that
repository, and those will be hosted in
https://hg.mozilla.org/l10n-central/.

We'll use those repositories to just build as usual, from m-c, m-b, etc.

Developer impact:

We'll need string IDs to be unique across channels. But that's really
it. We'll help with a test running in automation checking that, see
https://bugzilla.mozilla.org/show_bug.cgi?id=1353680.

Benefits for Firefox:

We'll be shipping localizations quicker. We'll be shipping fixes to
localizations quicker. We'll be dealing with string problems in a
straight forward way.

Overall, we're expecting localizers to be more involved, and more
frequently involved, and to generally increase product quality by
removing obstacles and confusing bits and pieces of where to fix a thing
and how to make that fix stick.

Are we done yet?

No, there's going to be a number of things we'll need to improve after
the initial landing. For one, we want to run the tool that creates the
repository in automation. I'll run it at home for a while to tell the
difference between problems in my code and your code.
The other interesting bit is going to be to deal with closed heads and
debugparents as part of merge days. But that has 6 weeks time, as the
next couple of merges are only forks for x-channel for now.

Timeline:

We've been talking to various stakeholders in the Firefox team, to our
VCS friends, to localizers for quite some time. Firefox 57 is a force in
actually landing this, to deliver on our quality expecations. But also
to deal with the slightly different merge plans that Sylvestre announced
earlier today. Actually shipping x-channel with 57 is the only really
sane and polite way to deal with that plan.

The tracking bug is https://bugzilla.mozilla.org/show_bug.cgi?id=1353655.

Happy to answer questions

Axel

PS: a hundred repositories to rule them all? Yeah, we're moving from 3-4
for each of our ~100 localizations to one for each. We intend to
continue to ship a different version per locale and Firefox product
going forward, and that's just easier to digest with independent
repositories per locale.
0 new messages