Welcome to the February 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
- Major improvements to CI intermittent-failure detection by Marco and Eva! Details are below 👇 - Serious, detailed docs for setting up Taskgraph <https://taskcluster-taskgraph.readthedocs.io/en/latest/usage/setup.html> have been written by ahal, which should significantly improve stability Detailed Project UpdatesBugzilla and Bugbug - marco implemented a new autonag script <https://github.com/mozilla/relman-auto-nag/pull/1284> to needinfo authors if their changes cause a regression bug - calixte and marco implemented a new autonag script <https://github.com/mozilla/relman-auto-nag/issues/266> to unassign inactive accounts from bugs (example usage here <https://bugzilla.mozilla.org/show_bug.cgi?id=1518675#c157>) - Sylvestre added new autonag checks <https://github.com/mozilla/relman-auto-nag/pull/1280> to escalate bugs with several CCs or votes Build System and Mach Environment - Alex fixed a 3 minute hang on Windows when running `./mach python-test` by replacing ProcessHandler with subprocess <https://bugzilla.mozilla.org/show_bug.cgi?id=1753555> - Alex also added a progress bar to `./mach python-test`’s output <https://bugzilla.mozilla.org/show_bug.cgi?id=1753795> - Mitch fixed `./mach lint -l black` on Windows <https://bugzilla.mozilla.org/show_bug.cgi?id=1753701> CI and Treeherder - arai added a button to task groups <https://bugzilla.mozilla.org/show_bug.cgi?id=1743534> which offers a one-click solution to request all tasks in a group to run - commonly used by developers testing their changes on Try to extend the build and tests to run (e.g. empty pushes <https://firefox-source-docs.mozilla.org/tools/try/selectors/empty.html>) - Eva added support <https://github.com/mozilla/treeherder/pull/7356> for retrieving automated mozci failure classification results and store them in Treeherder - marco landed multiple improvements to the mozci intermittent / real failure classification logic (1 <https://github.com/mozilla/mozci/pull/627>, 2 <https://github.com/mozilla/mozci/pull/640>, 3 <https://github.com/mozilla/mozci/pull/641>, 4 <https://github.com/mozilla/mozci/pull/655>, 5 <https://github.com/mozilla/mozci/pull/658>) - Eva implemented a monitoring mode <https://github.com/mozilla/mozci/pull/623> to periodically evaluate mozci results and investigate errors - Bastien added support <https://github.com/mozilla/mozci/pull/635> for sending emails when mozci detects a push containing a real failure, and Eva for sending Matrix notifications <https://github.com/mozilla/mozci/pull/650> - Eva built a script to compare mozci classifications with sheriff classifications (1 <https://github.com/mozilla/mozci/pull/636>, 2 <https://github.com/mozilla/mozci/pull/652>) - Marco and Eva improved the mozci classification evaluation script to avoid any biases from manual classifications and expanded it (1 <https://github.com/mozilla/mozci/pull/638>, 2 <https://github.com/mozilla/mozci/pull/661>, 3 <https://github.com/mozilla/mozci/pull/664>, 4 <https://github.com/mozilla/mozci/pull/636>, 5 <https://github.com/mozilla/mozci/pull/652>) - jmaher got all desktop tests running as fission <https://bugzilla.mozilla.org/show_bug.cgi?id=1750399>, and added a Linux “nofis” variant until Android is supported - jmaher enabled artifact support for browser-chrome a11y tests, split up the large mochitest-media manifests <https://bugzilla.mozilla.org/show_bug.cgi?id=1755075>, and “greened up” CI by improving the way some intermittent tests were run - Chidinma added the ability to retrigger tasks from mozci <https://github.com/mozilla/mozci/commit/ca59143be33708d87e540aa06599c129fd3d1058> as well as extended the classify command to auto-retrigger <https://github.com/mozilla/mozci/commit/4c8a7500cc13eb57968148f14c23bac58b413069> for greater accuracy Fuzzing and Sanitizers - Jesse added fuzzing support of Mac OS on Taskcluster - Jason implemented WebGPU fuzzing <https://bugzilla.mozilla.org/show_bug.cgi?id=1753982> in Domino Lint, Static Analysis and Code Coverage - marco disabled RLBox in code coverage builds <https://bugzilla.mozilla.org/show_bug.cgi?id=1755648>, to make sure we collect coverage data for RLBox-ed code PDF.js - Calixte added support for searching for words in PDFs with or without diacritics <https://github.com/mozilla/pdf.js/pull/13261> (e.g. déjà -vu). At the same time, the find-in-page support in PDF has been greatly improved. - Calixte fixed handling cases where “lineWidth” is too small to render (such as after transforms) <https://github.com/mozilla/pdf.js/pull/14536> - Brendan resolved a “soft mask”-related issue <https://github.com/mozilla/pdf.js/pull/14569> that could prevent images and text from being rendered properly - jrmuizel added support for some JPEG2000 COD options <https://github.com/mozilla/pdf.js/pull/14610> Phabricator , moz-phab, and Lando - sheehan landed changes to Lando to allow testing against a mock s3 bucket, eliminating the need for a real one Release Engineering and Management - Release Engineering would like to welcome Cyrus Bond as their new Engineering Manager! - Release Engineering would also like to (officially) welcome Michelle Goossens (aka masterwayz) who is starting a contract to help migrate our CI worker pools to GCP - ahal created comprehensive documentation <https://taskcluster-taskgraph.readthedocs.io/en/latest/usage/setup.html> on getting started with Taskgraph for the first time. - ahal designed <https://github.com/mozilla-releng/releng-rfcs/blob/master/rfcs/0037-decision-python-deps.md> and implemented <https://hg.mozilla.org/ci/taskgraph/rev/1d87180150c4831cba1cc7c871cac75a6463643e> a way to install Python dependencies from the run-task script. This will allow consumers of Taskgraph to install it from pypi <https://pypi.org/project/taskcluster-taskgraph/>. - hneiva refactored VPN signing and added support for adhoc signing. This will enable automated signing once builds are moved to Taskcluster. - Gabriel enhanced the add-ons pipeline to archive and create releases for signed system add-on artifacts. Version Control - sheehan added a check for the Python version to the Mercurial setup wizard, to prepare for Mercurial Py2 deprecation Other - The NSPR documentation has moved to mozilla-central and is available on https://firefox-source-docs.mozilla.org/nspr/ Thanks for reading and see you next month! -- 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/CAAvot8_r2YtDNZoB_2y6o-0qJoUjSZ2BxxKE9xivcf5Y2owqpA%40mail.gmail.com.
