Engineering Effectiveness Newsletter (October / November Edition)

Detailed Project Updates

Bugzilla and Bugbug

Crash Management

  • Alex Franchuk developed a dashboard displaying Glean-based crash ping data: https://crash-pings.mozilla.org. This includes Android crash pings, which are newly-available: we did not have crash pings in legacy Telemetry. The dashboard UI will be further improved in the coming months.
  • Alex Franchuk added support for language packs to the crash reporter client
  • Alex Franchuk merged the minidump-analyzer executable into the crash reporter client, shrinking our installation size
  • Various fixes have been applied to how we store the names and paths of the libraries in a minidump file

Lint, Static Analysis and Code Coverage

OS Integration and Security

  • David Parks landed support for the new Windows Geolocation prompting in the 24H2 update and uplifted to ESR
  • Stephen Pohl landed fixes to make the macOS Emoji Picker functional again post macOS Sonoma
  • Greg Stoll (with PM support from Perla Duenas) enabled Tab unloading via the “Unload Tab” tab context menu was enabled on Nightly. We plan to
  • Serge Guelton added -fstrict-flex-arrays=1 as an extra hardening flag and adapted variadic array declarations accordingly.

Firefox Translations

  • Evgeny Pavlov and Greg Tatum’s training pipeline produced 4more shippable models.
    • cs-en (Czech to English)
    • el-en (Greek to English)
    • id-en (Indonesian to English)
    • ro-en (Romanian to English)
  • Evgeny Pavlov has been making progress on the training pipeline for producing Chinese, Japanese, and Korean (CJK) language models.
  • Erik Nordin forked the Bergamot Translator project into Mozilla’s Translations repository and replaced the non-CJK-compatible ssplit segmenter with Intl.Segmenter.
  • Erik Nordin set up infrastructure to end-to-end test our models in Firefox CI as well as in the Translations repository CI.
  • Greg Tatum has been working on optimizing the most expensive part of the pipeline.
    • translate-* tasks took 597 gpu hours for a single language down to 69 hours, a reduction of 12%.
    • Wall time for the task went from 3 days 8 hours to just 2.7 hours.
  • Greg Tatum has been experimenting with the student model parameters to identify the ideal trade-off on quality vs performance.
    • embedding size is very important for morphologically complex languages like Balto-Slavic languages.

Phabricator , moz-phab, and Lando

Mercurial to Git project

  • The majority of the work required to migrate Lando to a Django application has been completed; this work in part simplifies the authentication and development of new features
  • Migrating mach try submission to Lando is complete; --push-to-lando is the default behaviour of mach try.
  • The work to add support for landing to Git and GitHub repositories to Lando is nearly complete
  • Work is beginning on the automation API, and on creating a git server in the conduit suite
  • Here’s a link to the hg to git project roadmap

Release Engineering, Taskcluster and Release Management

Version Control

  • Julien Cristau and Connor Sheehan upgraded the ssh server behind hg.mozilla.org to run on virtualised hardware and a newer operating system.
  • Connor Sheehan added Azure uploads to the clonebundles generation process and updated Mercurial to serve those bundles to Azure hosted CI tasks, making use of Jonathon Moss’ Azure IP address block scraper.

mozregression

  • Zeid added support for new xz taskcluster archives in mozregression (bug 1931405)

Thanks for reading and see you next month!