In bug https://bugzilla.mozilla.org/show_bug.cgi?id=1406536
a plan for reorganizing the Build Tools and Automation components in
The reasons for this are:
* build tools bugs are not the same as Firefox bugs and including them in
the Core and Firefox components distorts the numbers of open and untriaged
* build tools bugs get fixed quickly, we'd not be able to build firefox if
they are down
* untriaged and inactive build tools bugs are related to builds on
After some consideration, we've decided on this layout for a new product in
Bugzilla (thanks to gps for capturing this)
New Product: Firefox Build System and Automation
Build System <- Core :: Build Config, Firefox :: Build Config
- File bugs here for general Firefox build system issues. This includes
problems running `mach build`, `mach configure`, `mach package`, `mach
artifact`, and other mach commands related to building Firefox. This
component also tracks issues related to moz.build and make files.
Build System (Unsupported Platforms) (new component - to help us
better isolate bugs)
- Like the "Build System" component but for issues related to platforms
not officially supported by Mozilla's infrastructure (e.g. FreeBSD, NetBSD,
non-MacOS Darwin, etc).
Automation Task Configuration <- TaskCluster :: Task Configuration
- Tracks changes to how Firefox continuous integration (CI) tasks run.
This includes build and testing related tasks. If you want to request a
change to how some part of Firefox automation runs, this is a good place to
file a bug. (Automation could mean many things, whereas task evokes
Mach Core <- Core :: Mach
- Tracking bugs and feature requests for mach: a generic CLI dispatching
tool. *Issues with specific `mach` commands used to develop Firefox should
be reported elsewhere. e.g. issues with `mach build` should be filed in the
"Build System" component.
System Bootstrap and Configuration (new component)
- Tracks issues related to the various tools that attempt to bootstrap
and configure a system to optimally build and develop Firefox. This
includes the standalone "mozboot" bootstrap.py script, `mach bootstrap`,
`mach mercurial-setup`, and `mach doctor`.
Source Code Analysis <- Testing :: Lint
- For issues related to linting tools (e.g. flake8, eslint), static
analysis tools (e.g. clang-analyze), and code formatting tools (e.g.
clang-format). Feature requests for better ways to analyze or reformat
source code can also be filed here.
Generated Documentation (new component)
- For issues related to documentation generated from in-repository
content. This covers the Sphinx documentation (`mach doc` and
IDE, Editor, Debugger, and Miscellaneous Tool Integration (new
component - I think)
- For issues related to integrating Firefox development into other
tools. e.g. Visual Studio and Eclipse integration. gdb and rr integration.
Issues developing with the Emacs operating system.
If you have comments on this reorganization, please respond to this by next
Thursday, the 16th. We'll schedule the move for after Thanksgiving.