Welcome to the August and September edition of the Engineering
Effectiveness Newsletter! The Engineering Effectiveness org makes it easy
to develop, test and release Mozilla software at scale. See below for some
highlights, then read on for more detailed info!
Highlights
-
Please welcome Olivier Mehani who joined Engineering Workflow as a Staff
Software Engineer.
-
Also, please welcome the Taskcluster team to this newsletter!
-
The Taskcluster team is getting closer to Release Engineering. For a
trial period of several months, the TC team reports to Johan Lorenzo. If
the trial period is successful, the Taskcluster will move to Engineering
Effectiveness. As a consequence
-
OS Integration is hiring
<https://www.mozilla.org/en-US/careers/position/gh/6271311/>. Release
Engineering is too
<https://www.mozilla.org/en-US/careers/position/gh/6149854/>. Both roles
are Staff Engineers.
Contributors
-
Mathew Hodson (Bug 1894758
<https://bugzilla.mozilla.org/show_bug.cgi?id=1894758>, Bug 1830673
<https://bugzilla.mozilla.org/show_bug.cgi?id=1830673>, Bug 1792887
<https://bugzilla.mozilla.org/show_bug.cgi?id=1792887>, Bug 1863690
<https://bugzilla.mozilla.org/show_bug.cgi?id=1863690>)
Detailed Project UpdatesBugzilla and Bugbug
-
Benjamin Mah implemented improvements to BugBot to prevent requesting
needinfo for backed out patches.
<https://github.com/mozilla/bugbot/pull/2465>
-
Benjamin Mah enhanced BugBot to extend the inactive needinfo tool to
consider people as inactive in a shorter time.
<https://github.com/mozilla/bugbot/pull/2457>
-
Kohei has added comment reactions and a markdown editor to comments in
Bugzilla.
Build System and Mach Environment
-
Alex Hochheiden Replaced poetry with uv in
<https://bugzilla.mozilla.org/show_bug.cgi?id=1920152> ./mach vendor
python and added some new features (--add, --remove, --upgrade, and
--force). Vendoring Python is now two times faster.
CI and Treeherder
-
Andrew Halberstadt is creating a cost ETL
<https://docs.mozilla-releng.net/en/latest/explanations/fxci-etl.html>
for the Firefox-CI Taskcluster instance, and an early tasks explore
is now available
in Looker <https://mozilla.cloud.looker.com/explore/fxci/tasks>!
-
Don’t trust this data for mission critical things just yet, but do
poke around and raise any discrepancies you find
Crash Management
-
The crash reporter client supports profiles living on a volume that’s
different than the home directory, this was a 15yo bug
<https://bugzilla.mozilla.org/show_bug.cgi?id=506009>
-
The crash reporter client now supports per-monitor DPI scaling
<https://bugzilla.mozilla.org/buglist.cgi?quicksearch=1521450>
-
The minidump-analyzer tool used for client-side crash analysis has
been entirely
rewritten in Rust <https://bugzilla.mozilla.org/show_bug.cgi?id=1743983>,
this means that we now use the exact same logic on the client and on
crash-stats when processing crashes
-
The minidump generation code has been updated
<https://bugzilla.mozilla.org/show_bug.cgi?id=1912131> and is now more
robust on Linux and Android and over 25 times faster when generating
minidumps
-
The rust-minidump tool can now identify when a crash has an inconsistent
state that is most likely caused by bad hardware
<https://github.com/rust-minidump/rust-minidump/pull/1014>.
-
Windows system libraries whose module name differs from the filename are
now scraped correctly
<https://bugzilla.mozilla.org/show_bug.cgi?id=1920445>
-
We now get symbols for all of Ubuntu’s daily Firefox builds
<https://bugzilla.mozilla.org/show_bug.cgi?id=1921540>
Glean migration
-
Are we Glean yet? A dashboard <https://arewegleanyet.com/> shows the
progress of migrating Firefox desktop from legacy telemetry to Glean.
-
Expired and historical legacy telemetry histograms and scalars were
removed
<https://bugzilla.mozilla.org/showdependencytree.cgi?id=1913576&hide_resolved=0>
(5.7k lines of code removed).
-
Most legacy telemetry events (JS
<https://bugzilla.mozilla.org/show_bug.cgi?id=1918702>, C++
<https://bugzilla.mozilla.org/show_bug.cgi?id=1918226>) are now recorded
using Glean.
-
Most data collection in Firefox can now be visualized in the Firefox
Profiler with markers. Legacy Telemetry is fully covered
<https://bugzilla.mozilla.org/show_bug.cgi?id=1914862>, Glean is
work-in-progress
<https://bugzilla.mozilla.org/showdependencytree.cgi?id=1913438&hide_resolved=1>.
(example profile <https://share.firefox.dev/47Mg7J9>)
Lint, Static Analysis and Code Coverage
-
25-30% speedup of identification of new issues in tasks scheduled by
Code Review Bot, by Bastien Abadie from Teklia
-
major upgrades of backend of Code Review Bot for redis and Django (to
5.1)
OS Integration and Security
-
We have improved our support for macOS session resume
<https://bugzilla.mozilla.org/show_bug.cgi?id=1827651>. More
specifically, this means that Firefox will now restart as expected if it
had been running before macOS restarted, for example due to an OS update.
-
Content processes now run in USER_RESTRICTED mode
<https://bugzilla.mozilla.org/show_bug.cgi?id=1900175> on Nightly.
-
Content processes are now blocked from accessing temp dirs
<https://bugzilla.mozilla.org/show_bug.cgi?id=1506198> on all platforms.
-
We’re hiring!
<https://www.mozilla.org/en-US/careers/position/gh/6271311/>
PDF.js
-
The toolbar has been refactored in order to make it more accessible:
-
Its height can be changed thanks to the pref browser.uidensity
-
The hardcoded tabindex have been removed.
Firefox Translations
-
Evgeny Pavlov and Greg Tatum's training pipeline produced 10 more
shippable models.
-
cs-en (Czech to English)
-
en-da (English to Danish)
-
en-fi (English to Finnish)
-
en-hr (English to Croatian)
-
en-sl (English to Slovenian)
-
en-sv (English to Swedish)
-
en-tr (English to Turkish)
-
id-en (Indonesian to English)
-
ro-en (Romanian to English)
-
Erik Nordin (1911890
<https://bugzilla.mozilla.org/show_bug.cgi?id=1911890>) fixed an issue
with publishing a new minor-version upgrade of models.
-
This has allowed us to ship upgrades, including quality and
robustness improvements, to the following models, trained by
Evgeny Pavlov
and Greg Tatum.
-
el-en (Greek to English)
-
ru-en (Russian to English)
-
sl-en (Slovenian to English)
-
uk-en (Ukrainian to English)
-
Erik Nordin (1866827
<https://bugzilla.mozilla.org/show_bug.cgi?id=1866827>) implemented
changes to allow Firefox to retain the user's most recently translated-into
languages in order to populate better-informed default values for users.
-
Erik Nordin (1919230
<https://bugzilla.mozilla.org/show_bug.cgi?id=1919230>) reworked and
improved the translation of attributes within Firefox.
-
Attribute translations now respect notranslate rules on the current
element.
-
Attribute translations now respect notranslate rules from parent
elements.
-
We now have more fine-grained filters on when attributes are
translated, for example, the value attribute is only translated on
<input> elements that behave like buttons.
-
The Translations Team has started work to support Chinese, Japanese, and
Korean (CJK) translations.
-
Greg Tatum added support for importing data from HPLT for training
https://hplt-project.org/
-
Teklia finished working on adding support for experiment tracking in
Weights and Biases: https://wandb.ai/moz-translations/projects
Power use
-
Power use is now recorded during automated performance tests on Windows
11 and Android <https://bugzilla.mozilla.org/show_bug.cgi?id=1918793>.
Thanks to Sparky for pushing this over the finish line!
Phabricator , moz-phab, and Lando
-
Connor Sheehan created several BigQuery data sources with review metrics
pulled from Phabricator, building on the Phabricator-ETL script built by an
external contractor.
-
Connor Sheehan fixed an encoding issue with mach try –push-to-lando that
caused pushes to fail in Lando after they had been successfully submitted.
-
Connor Sheehan released version 1.6.0 of moz-phab, see the announcements
with release notes on Discourse. Thanks to Mathew Hodson, glandium and
mossop for their contributions!
-
https://discourse.mozilla.org/t/moz-phab-1-6-0-released/135682/2
-
https://discourse.mozilla.org/t/moz-phab-1-6-1-released/136005
Release Engineering, Taskcluster and Release Management
-
The Release Management team handled their first mergeday without Release
Engineering actively involved for some parts (FFXP-2809
<https://mozilla-hub.atlassian.net/browse/FFXP-2809>). There are still a
few more steps for RelEng to automate.
-
Firefox ESR115 support extended until at least March 2025
<https://support.mozilla.org/en-US/kb/firefox-users-windows-7-8-and-81-moving-extended-support>.
Julien Cristau made the necessary changes to make ESR128 the current ESR
branch while keeping 115 around.
-
Pete Moore added support of headless Linux workers on generic-worker
taskcluster#7247 <https://github.com/taskcluster/taskcluster/pull/7247>.
This paves the way for the d2g migration (from docker-worker to
generic-worker)
-
Matt Boris switched generic-worker to use docker as the container engine
by default. It used to be podman. Having docker will reduce the scope of
changes on the d2g migration.
-
Yarik Kurmyza bumped the maximum number of task dependencies to 10,000
(was 100) taskcluster#7158
<https://github.com/taskcluster/taskcluster/pull/7158>. This unblocks
Firefox Translations which has complex graphs with more than 100
dependencies for one task. Firefox Desktop worked around that limit but the
same workaround didn’t work on Translations
-
Ben Hearsum and Heitor Neiva upgraded
<https://github.com/mozilla-services/autograph/pull/945> several
<https://github.com/mozilla-services/autograph/pull/983> crypto
<https://github.com/mozilla-services/autograph/pull/987> libraries
<https://github.com/mozilla-services/autograph/pull/972> on
<https://github.com/mozilla-services/autograph/pull/993> Autograph
<https://github.com/mozilla-services/autograph/pull/984>. Autograph is
our in-house secured signing server. It has been unmaintained for several
years. Release Engineering is helping the Core Services team to catch up on
this tech debt.
-
Donal Meehan worked with the security team to develop a policy for
shipping security fixes in the planned mid-cycle dot release in order to
reduce the lag between a fix being created and shipping to users.
-
The 2025 Firefox Release Calendar has been finalized,
-
https://whattrainisitnow.com/ has been updated, please see the
calendar <https://whattrainisitnow.com/calendar/> for an overview or
the monthly calendar <https://whattrainisitnow.com/calendar/monthly/>
for a detailed overview.
-
Pascal worked on improving whattrainisitnow.com to make it more
efficient and provide more features. That includes the addition of an RSS
<https://whattrainisitnow.com/rss/> feed to be alerted of new releases,
the creation of a page dedicated to track top crashers and uplifts per
beta <https://whattrainisitnow.com/beta>, the addition of more data
hints to the release pages such as the adoption rate of releases or
milestones matching a wellness day. The app is also more mobile-friendly,
got a modest visual refresh and provides new APIs
<https://whattrainisitnow.com/about/> for external tools.
-
RelEng is hiring
<https://www.mozilla.org/en-US/careers/position/gh/6149854/>.
Version Control
-
Julien Cristau made the Mercurial setup wizard always update the evolve
extension without requiring the user to go through the entire setup process.
-
Julien Cristau and Connor Sheehan tweaked the retention time for logs in
the Kafka cluster behind hg.mozilla.org, avoiding an outage and
improving service stability.
-
Jon Buckley and Greg Cox worked to renew the hg.mozilla.org and
hg.cdn.mozilla.net SSL certificates.
-
Connor Sheehan tweaked the rate limits to be much more restrictive for
non-CI traffic to hg.mozilla.org.
Thanks for reading and see you next time!
--
You received this message because you are subscribed to the Google Groups
"[email protected]" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/a/mozilla.org/d/msgid/dev-platform/CAB4MO173T7jk%2BwHpjzNX38wHBGV0ZAswPYBYicjmTBKgt82P8A%40mail.gmail.com.