Engineering Effectiveness Newsletter (July 2021 Edition)

Welcome to the July 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

  • Saying goodbye to MDN for Firefox developer docs
  • Huge performance improvements in both memory usage and startup time on Linux thanks to semi-headless support, especially with Fission
  • As follow-ups to last month’s newsletter, more improvements landed around Phabricator for the reporting of warnings (ESLint warnings are now reported too) and to reduce the noise from emails and notifications

Contributors

  • Surajeet Das
  • Michelle Goossens (:masterwayz)
  • Dominik Nakamura (:dnaka91)

Detailed Project Updates

Build System and Mach Environment

CI and Treeherder

Crash Management

Fuzzing and Sanitizers

  • Jason Kratzer, with help from Jesse Schwartzentruber and Tyson Smith, improved Bugmon’s ability to detect the proper configuration for reproducing test cases
    • Previously, bugmon required bugs to match very specific criteria
    • Now, Bugmon is capable of iterating over various combinations of build types, environment variables, and test case configurations
  • Christian Holler, Jason Kratzer, and Jesse Scwhartzentruber coordinated several Fuzzmanager improvements:
    • Migrated most interfaces to a modern VueJS configuration
    • Significantly improved the process of submitting bugs directly to Bugzilla from within Fuzzmanager
    • Added a notification interface for detecting problematic conditions and notifying the fuzz team of bugs that may require immediate attention

Lint, Static Analysis and Code Coverage

OS Integration and Security

  • Jed Davis landed semi-headless support, increasing the number of processes we can run, without being limited by the amount of X11 connections
    • As a consequence, GTK initialization is being skipped, leading to performance improvements such as a 1.5MB per process reduction heap usage as well as 35% faster process startup
  • Bob Owen landed support to use Intel Control-flow Enforcement Technology in compatible modules only mode on Nightly
    • Crashreporter will already be using this on platforms with this feature
    • Non-content child processes will start to be enabled over the coming weeks, it is already enabled on the socket process

PDF.js

  • Brendan Dahl fixed several PDFs that were missing contents because of incorrect handling of image masks and patterns

Phabricator , moz-phab, and Lando

Release Engineering and Management

  • bhearsum landed support for signing MSIX packages, to support ongoing work to distribute through the Microsoft Store

Version Control

Other

Thanks for reading and see you next month!

2 Likes