As you all know by now, on Friday we released Fennec1.0. The new features and improvements are already being covered by other people in great detail, so I thought Iâ€™d focus on something totally different that happened behind the scenes for this release.
Lots of things were unique about Friday’s fennec1.0 release, but here’s the three that stuck out in my mind.
- Automation on mobile phones is much trickier then automation on desktops. See blogposts by jhford, aki and occaisionally myself on all the fun with imaging, setup, automation, scaling, calibration of all these machines. There’s still more work underway with new phones and new platforms – stay tuned!
- Fennec1.0 included a multi-locale version, which we believe is a first for Mozilla.
Until now, whenever time we shipped localized versions of a product, each separate download contained only one localization. If you wanted a different locale, you downloaded a different installer – or if you were savvy enough, you could tinker with some add-ons to switch xpi files. Historically this kinda makes sense on a desktop computer, and allowed us to save on download size, and improve first-time out-of-the-box startup time. However, an application installed on a phone could be shipped to a range of locales, so “multi-locale” was born. The basic idea is to detect the locale of the host OS on first run, and if that locale is one of the locales supplies in multi-locale installation, use that. There are tons of edge-cases though, which made for lots of fun, but I think it was well worth the effort in the end. The multi-locale version of fennec1.0 included 12 locales (cs, da, de, es-ES, fi, fr, it, nb-NO, nl, pl, pt-PT, ru). There are also 38 different single-locale versions of Fennec available for individual download.
- As part of all this, we had to learn how to get deb files generated at the right step in release automation, and how/where to host these deb files in order to make them useful. We will be reusing this knowledge.
Enjoy Fennec, and let us know what you think!
ps: the cake was great!