Here’s an outline of what is currently in Aurora this cycle for Firefox 52.
Current Aurora Cycle – Firefox 52
This is an unconventional cycle: it’s 2 cycles combined into one, to work around Holidays at the end of the year. It could be a great occasion to work on missing strings, or focus on testing if your locale is already in good shape.
Key dates for this cycle:
- Beta (51): localization updates for already shipping locales must be completed before 11 January.
- Aurora (52): localization updates must be completed before 23 January. That’s the Monday, also known as merge day, before the next release of Firefox.
- Firefox Aurora desktop has 330 added strings (61 obsolete). About 48% of the new strings are for Developer Tools. The actual amount of strings you’ll need to translate will be lower, more on that later in the Developer Tools section.
- Fennec Aurora has 55 new strings (29 obsolete). 5 new strings are Fennec-only (in /mobile).
There are currently no pending requests to uplift patches with strings to Aurora. There is ongoing work on Firefox stub installer that will probably need to land for Firefox 52, and there was a back-out during the weekend (strings landed and were removed for test failures). Given the exceptional length of the cycle, we might have a number of requests higher than usual. As we always do, we’ll carefully evaluate them one by one together with Release Drivers.
For further details on the new features you can check the release notes (they’re usually published a few days after release):
- Desktop: https://www.mozilla.org/en-US/firefox/52.0a2/auroranotes/
- Android: https://www.mozilla.org/en-US/firefox/android/52.0a2/auroranotes/
Noteworthy Changes Available in Aurora
These are some of the interesting changes introduced in the last cycle.
disableContainersMsg was fixed without a new iD: Containers Tabs -> Container Tabs
The entire /searchplugins folder was removed as part of Merge Day. Searchplugins are now stored directly in mozilla-central.
Several developer tools are still moving strings from .DTD to .properties:
- Inspector: https://hg.mozilla.org/releases/mozilla-aurora/rev/41f5b98f7b55
- Netmonitor: https://hg.mozilla.org/releases/mozilla-aurora/rev/6fc7fc30b5c5
A migration script was run on all locales, excluding those working on l10n-central (eo, es-ES, fr, it, pl, ru), to move strings from the existing DTD files to the new .properties files. 115 strings were moved in the process, reducing the number of missing strings for Firefox desktop to 215.
We also worked together with Pootle’s tech team to make sure that these changes will be imported in the tool.
Strings were automatically moved to netmonitor.properties, boxmodel.properties, font-inspector.properties, inspector.properties (all in /devtools/client). All obsolete DTD files were removed.
The new Debugger is now localizable, even if there are still some hardcoded strings to fix.
We added a new view in Transvision to display empty strings diverging between English and the requested locale. In other words, it displays a string that is empty in English but not in the locale, and a string that is empty in the locale but not in English.
Empty strings are not a rarity in Mozilla products:
- When creating a sentence with a link, 3 strings are used: before_link + link + after_link. English doesn’t need the part before or after the link, but that’s useful for other languages, so it’s kept empty in English. It’s expected for some locales to have a different behavior than English.
- There are secondary commandkeys or accesskeys, or special values that are supposed to remain empty for most locales.
Pootle will report these empty strings as untranslated: for the first type of strings you can use the special control displayed under the text area to insert a “zero width non-joiner” character. That doesn’t necessarily work for the second type, so you’re invited to test to avoid introducing strange behaviors.
Related to this special values, there are several locales with wrong values for the following keys.
Intl.charset.detector (toolkit) Localization comment: # LOCALIZATION NOTE (intl.charset.detector): # This preference controls the initial setting for the character encoding # detector. Valid values are ja_parallel_state_machine for Japanese, ruprob # for Russian and ukprob for Ukrainian and the empty string to turn detection # off. The value must be empty for locales other than Japanese, Russian and # Ukrainian.
isRTL (crashreporter) # LOCALIZATION NOTE (isRTL): # Leave this entry empty unless your language requires right-to-left layout, # for example like Arabic, Hebrew, Persian. If your language needs RTL, please # use the untranslated English word "yes" as value
A few new locales were added in Firefox 51 Beta:
- Georgian (ka) and Kabyle (kab) in Firefox desktop.
These are the new locales shipping in release with Firefox 50:
- Guaraní (gn) in Firefox for Android.
Congratulation to all the teams involved!
We currently have 5 other locales working on Firefox desktop, and we really look forward to release them in the next versions of Firefox:
- Latgalian (ltg)
- Burmese (my)
- Nepali (ne-NP)
- Tagalog (tl)
- Urdu (ur)
The following locales are targeting Firefox 52 to release Firefox for Android:
- Asturian (ast)
- Georgian (ka)
If you want to know more about the process of releasing new locales, or if you speak one of these languages and want to know how to help the localization teams, please get in touch with us.
To all localizers: Thanks again for all the time and effort you put in localizing and promoting Firefox in your language.