3 # This Source Code Form is subject to the terms of the Mozilla Public
4 # License, v. 2.0. If a copy of the MPL was not distributed with this
5 # file, You can obtain one at https://mozilla.org/MPL/2.0/.
7 # See https://mots.readthedocs.io/en/latest/#quick-start for quick start
8 # documentation and how to modify this file.
10 created_at: '2021-10-14T12:50:40.073465'
11 updated_at: '2023-11-07T14:09:31.961357'
13 path: ./docs/mots/index.rst
15 searchfox_enabled: true
17 Mozilla operates under a `module ownership governance system <https://www.mozilla.org/hacking/module-ownership.html>`_. A module is a discrete unit of code or activity. An owner is the person in charge of a module or sub-module. A peer is a person whom the owner has appointed to help them. A module may have multiple peers and, very occasionally, multiple owners.
19 The system is overseen by the owner and peers of the Module Ownership module. For the modules that make up Firefox, oversight is provided by the Firefox Technical Leadership module. Owners may add and remove peers from their modules as they wish, without reference to anyone else.
44 name: Andrew Halberstadt
48 name: Yoshi Cheng-Hao Huang
80 name: Andrew Sutherland
88 name: Andrea Marchesini
100 name: Benjamin Bouvier
108 name: Ben Dean-Kawamura
112 name: Benjamin Beurdouche
140 name: Hubert Boma Manilla
151 name: Bryce Seager van Dyk
162 name: Benjamin VanderSloot
178 name: Calixte Denizet
189 name: Nazım Can Altınova
193 name: Caroline Cullen
205 name: Christoph Kerschbaumer
221 name: Daisuke Akatsuka
257 name: Alessio Placitelli
289 name: Dragana Damjanovic
329 name: Emilio Cobos Álvarez
333 name: Masatoshi Kimura
359 name: Nick Fitzgerald
363 name: Francesco Lodolo
379 name: Gabriel Bustamante
387 name: Gian-Carlo Pascutto
414 name: Gabriele Svelto
422 name: Haik Aftandilian
430 name: Hiroyuki Ikezoe
442 name: Jan Honza Odvarko
466 name: Jan-Erik Rediger
482 name: Julian Descottes
510 name: Jan-Ivar Bruaroey
542 name: Jonathan Almeida
574 name: Jules Simplicio
581 name: Jean-Yves Avenard
633 name: Dzmitry Malyshau
645 name: Lougenia Bailey
665 name: Marco Castelluccio
681 name: Masayuki Nakano
690 nick: MatsPalmgren_bugz
697 name: Andrew McCreight
729 name: Morgan Reschenberg
769 name: Nicolas Chevobbe
781 name: Niklas Baumgardner
805 name: Alexandre Poirot
813 name: Andrew Overholt
833 name: Andreas Pehrson
841 name: Peter Van der Beken
885 name: Alexandra Borovova
913 name: Shravan Narayan
929 name: Greg Mierzwinski
945 name: Martin Stránský
952 name: Sylvestre Ledru
968 name: Teodor Tanasoaia
999 name: Toshihito Kikuchi
1035 name: William Durand
1047 name: Yulia Startsev
1058 name: Zibi Braniecki
1066 name: Tomislav Jovanovic
1069 - name: firefox-toplevel
1070 description: The top level directory for the Firefox/Gecko tree. Owned by the
1085 machine_name: _firefoxtoplevel
1087 - machine_name: code_coverage
1089 description: Tools for code coverage instrumentation, and coverage data parsing
1092 - tools/code-coverage/**/*
1093 - python/mozbuild/mozbuild/codecoverage/**/*
1094 - testing/mozharness/mozharness/mozilla/testing/codecoverage.py
1103 - 'Testing :: Code Coverage'
1104 - name: 'Core: Accessibility'
1105 description: Support for platform accessibility APIs. Accessibility APIs are used
1106 by 3rd party software like screen readers, screen magnifiers, and voice dictation
1107 software, which need information about document content and UI controls, as
1108 well as important events like changes of focus.
1122 group: dev-accessibility
1123 url: https://developer.mozilla.org/docs/Web/Accessibility
1125 - Core::Disability Access APIs
1132 machine_name: core_accessibility
1134 - name: 'Core: Animation'
1135 description: 'Declarative animations: CSS animations, CSS transitions, Web Animations
1136 API, and off-main thread animations.'
1138 - dom/animation/**/*
1139 # TODO "and animation-related and interpolation-related code
1140 # in layout/style, gfx/layers, servo/components/style and servo/ports/gecko
1144 - Core::DOM::Animation
1145 - Core::CSS Transitions and Animations
1153 machine_name: core_animation
1155 - name: 'Core: Anti-Tracking'
1156 description: Tracking detection and content-blocking.
1158 - toolkit/components/antitracking/**/*
1159 # several files under browser/ and netwerk/url-classifier/ **TODO**
1167 - 'Core::Privacy: Anti-Tracking'
1175 machine_name: core_antitracking
1177 - name: 'Core: APZ (Graphics submodule)'
1178 description: Asynchronous panning and zooming
1180 - gfx/layers/apz/**/*
1187 url: https://wiki.mozilla.org/Platform/GFX/APZ
1189 - Core::Panning and Zooming
1197 machine_name: core_apz_graphics_submodule
1199 - name: 'Core: Browser WebAPI'
1200 description: Web API for rendering apps, browser windows and widgets.
1202 - dom/browser-element/**/*
1213 machine_name: core_browser_webapi
1215 - name: 'Core: Build and Release Tools'
1216 description: Tools related to build and release automation and configuration of
1219 - tools/update-packaging/**/*
1220 - tools/update-verify/**/*
1224 group: release-engineering
1225 url: https://wiki.mozilla.org/ReleaseEngineering
1227 - Release Engineering::*
1234 machine_name: core_build_and_release_tools
1236 - name: 'Core: Build Config'
1237 description: The build system for Gecko and several mozilla.org hosted Gecko-based
1242 - python/mozbuild/**/*
1243 - browser/config/mozconfigs/**/*
1261 url: :ref:`Build System`
1263 - Core::Build Config
1270 - name: 'Core: Build Config - Fennec'
1271 description: Submodule of the build config covering Fennec's build system
1276 - Core::Build Config
1280 machine_name: core_build_config_fennec
1282 - name: 'Core: Build Config - Taskgraph'
1283 description: Support for task-graph generation in decision, action, and cron
1284 tasks, including configuration of all tasks including those for CI, nightlies,
1285 and releases; as well as Docker and VM images used to execute those tasks.
1290 - Firefox Build System::Task Configuration
1306 machine_name: core_build_config_taskgraph
1307 machine_name: core_build_config
1309 - name: 'Core: Code Analysis and Debugging Tools'
1310 description: Tools for debugging Mozilla code or for analyzing speed, memory use,
1311 and other characteristics of it.
1314 - tools/leak-gauge/**/*
1315 - tools/performance/**/*
1318 group: dev-performance
1322 machine_name: core_code_analysis_and_debugging_tools
1324 - name: 'Core: Content Security'
1325 description: 'Native content-based security features enforced in the ContentSecurityManager,
1326 including: Content Security Policy (CSP), Mixed Content Blocker (MCB), Referrer
1327 Policy, Subresource Integrity (SRI), Cross-Origin Resource Sharing (CORS), X-Frame-Options,
1328 X-Content-Type-Options: nosniff, HTTPS-Only-Mode, Sanitizer API, Sec-Fetch Metadata,
1329 and top-level data: URI blocking.'
1341 - 'Core::DOM: Security'
1349 machine_name: core_content_security
1351 - name: 'Core: Cookies'
1354 - netwerk/cookie/**/*
1363 - Christian Biesinger
1369 - 'Core::Networking: Cookies'
1378 machine_name: core_cookies
1380 - name: 'Core: Crash reporting'
1381 description: Infrastructure and tools used to generate, submit and process crash
1382 reports. This includes the in-tree google-breakpad fork, the crash report generation
1383 machinery as well as the host tools used to dump symbols, analyse minidumps
1384 and generate stack traces.
1386 - toolkit/crashreporter/**/*
1387 - toolkit/components/crashes/**/*
1388 - tools/crashreporter/**/*
1389 - ipc/glue/CrashReporter*
1390 - mobile/android/geckoview/src/main/java/org/mozilla/geckoview/CrashReporter.java
1395 url: :ref:`Crash Reporter`
1397 - Toolkit::Crash Reporting
1403 machine_name: core_crash_reporting
1405 - machine_name: core_credentials
1406 name: 'Core: Credentials'
1407 description: API Surface for FedCM and WebAuthn
1409 - toolkit/components/credentialmanagement/**/*
1410 - browser/components/credentialmanager/**/*
1411 - dom/credentialmanagement/**/*
1423 - 'Core::DOM: Credential Management'
1424 - 'Core::DOM: Web Authentication'
1426 - name: 'Core: C++/Rust usage, tools, and style'
1427 description: Aspects of C++ use such as language feature usage, standard library
1428 versions/usage, compiler/toolchain versions, formatting and naming style, and
1429 aspects of Rust use as needs arise
1431 # NOTE: more of a "meta module" -- who do we ask when we want to do the above?
1432 # Includes/globs include where we define coding style, etc... (i.e. documentation)
1433 # - docs/code-quality/**/*
1434 # - docs/testing-rust-code/**/*
1435 # - docs/writing-rust-code/**/*
1450 machine_name: core_crust_usage_tools_and_style
1452 - name: 'Core: Cycle Collector'
1453 description: Code to break and collect objects within reference cycles
1455 - xpcom/base/nsCycleCollect*
1456 # TODO "and some support headers"
1457 # NOTE: not always clean lines between modules and file boundaries. This module is deeply intertwines with other modules (e.g. XPCOM)
1463 - Core::Cycle Collector
1469 machine_name: core_cycle_collector
1471 - name: 'Core: DLL Services'
1472 description: Windows dynamic linker instrumentation and blocking
1474 - toolkit/xre/dllservices/**/*
1480 - Core::DLL Services
1485 machine_name: core_dll_services
1487 - name: 'Core: docshell'
1491 - uriloader/base/**/*
1497 - Christian Biesinger
1503 - Core::Document Navigation
1510 machine_name: core_docshell
1512 - name: 'Core: Document Object Model'
1516 exclude_module_paths: true
1533 url: http://developer.mozilla.org/en/docs/DOM
1536 - 'Core::DOM: Core & HTML'
1537 review_group: dom-core
1553 machine_name: core_document_object_model
1555 - name: 'Core: DOM File'
1556 description: DOM Blob, File and FileSystem APIs
1559 - dom/filesystem/**/*
1562 url: http://developer.mozilla.org/en/docs/DOM
1569 machine_name: core_dom_file
1571 - machine_name: core_dom_streams
1572 name: 'Core: DOM Streams'
1573 description: Streams Specification implementation
1584 url: http://developer.mozilla.org/en/docs/DOM
1587 - 'Core::DOM: Streams'
1590 - name: 'Core: Editor'
1605 machine_name: core_editor
1607 - name: 'Core: Event Handling'
1608 description: DOM Events and Event Handling
1611 # TODO "and event handling related code elsewhere"
1616 url: http://developer.mozilla.org/en/docs/DOM
1618 - 'Core::DOM: Events'
1619 - 'Core::DOM: UI Events & Focus Handling'
1625 machine_name: core_event_handling
1627 - machine_name: core_firefox_source_documentation
1628 name: 'Core: Firefox Source Documentation'
1629 description: The infrastructure platform used to generate Firefox's source documentation,
1630 excluding editorial control over the content.
1633 - tools/moztreedocs/
1640 - Developer Infrastructure::Source Documentation
1641 url: https://firefox-source-docs.mozilla.org/
1642 - name: 'Core: Gecko Profiler'
1643 description: Gecko's built-in profiler
1645 - tools/profiler/**/*
1646 - mozglue/baseprofiler/**/*
1651 - Shu-yu Guo (JS integration)
1652 - Thinker Lee (TaskTracer)
1653 - Cervantes Yu (TaskTracer)
1654 - Nicholas Nethercote
1660 url: https://firefox-source-docs.mozilla.org/tools/profiler/
1662 - Core::Gecko Profiler
1669 machine_name: core_gecko_profiler
1671 - name: 'Core: GeckoView'
1672 description: Framework for embedding Gecko into Android applications
1674 - mobile/android/**/*
1675 - widget/android/**/*
1687 url: https://wiki.mozilla.org/Mobile/GeckoView
1689 - GeckoView::General
1697 machine_name: core_geckoview
1699 - name: 'Core: Global Key Bindings'
1700 description: Global hot keys for Firefox. Does not include underlined menu accelerators
1701 and the like, as those are part of i18n.
1704 # TODO "and platform specific directories under it"
1706 group: dev-accessibility
1707 url: https://support.mozilla.org/kb/keyboard-shortcuts-perform-firefox-tasks-quickly
1709 - 'Core::Keyboard: Navigation'
1714 machine_name: core_global_key_bindings
1716 - name: 'Core: Graphics'
1717 description: Mozilla graphics API
1725 - Benoit Girard(Compositor, Performance)
1727 - George Wright(Canvas2D)
1731 - John Daggett(text/fonts)
1732 - Benoit Jacob(gfx/gl)
1734 - Vladimir Vukicevic
1735 - James Willcox(Android)
1738 url: https://wiki.mozilla.org/Platform/GFX https://wiki.mozilla.org/Gecko:Layers
1739 https://wiki.mozilla.org/Gecko:2DGraphicsSketch
1742 - 'Core::Graphics: Layers'
1743 - 'Core::Graphics: Text'
1744 - 'Core::Graphics: WebRender'
1745 - 'Core::GFX: Color Management'
1746 - 'Core::Canvas: 2D'
1747 - 'Core::Canvas: WebGL'
1762 machine_name: core_graphics
1765 description: Hardware Abstraction Layer
1771 - Core::Hardware Abstraction Layer (HAL)
1775 machine_name: core_hal
1777 - name: 'Core: HTML Parser'
1778 description: The HTML Parser transforms HTML source code into a DOM. It conforms
1779 to the HTML specification, and is mostly translated automatically from Java
1785 url: http://about.validator.nu/
1787 - 'Core::HTML: Parser'
1792 machine_name: core_html_parser
1794 - name: 'Core: I18N Library'
1803 url: :ref:`Internationalization`
1805 - Core::Internationalization
1813 machine_name: core_i18n_library
1815 - name: 'Core: ImageLib'
1818 - media/libjpeg/**/*
1835 machine_name: core_imagelib
1837 - name: 'Core: IndexedDB'
1840 - dom/indexedDB/**/*
1848 url: https://developer.mozilla.org/en/IndexedDB
1850 - 'Core::DOM: IndexedDB'
1851 review_group: dom-storage-reviewers
1858 machine_name: core_indexeddb
1861 description: Native message-passing between threads and processes
1882 review_group: ipc-reviewers
1889 machine_name: core_ipc
1891 - name: 'Core: JavaScript'
1892 description: JavaScript engine (SpiderMonkey)
1916 - Nicholas Nethercote
1921 url: https://spidermonkey.dev/
1923 - Core::JavaScript Engine
1924 - 'Core::JavaScript: GC'
1925 - 'Core::JavaScript: Internationalization API'
1926 - 'Core::JavaScript: Standard Library'
1927 - 'Core::JavaScript: WebAssembly'
1949 machine_name: core_javascript
1951 - name: 'Core: JavaScript JIT'
1952 description: JavaScript engine's JIT compilers (IonMonkey, Baseline)
1960 url: https://spidermonkey.dev/
1962 - 'Core::JavaScript Engine: JIT'
1978 machine_name: core_javascript_jit
1980 - name: 'Core: js-tests'
1981 description: JavaScript test suite
1985 group: dev-tech-js-engine
1986 url: http://www.mozilla.org/js/tests/library.html
1990 machine_name: core_jstests
1992 - name: 'Core: Layout Engine'
1993 description: rendering tree construction, layout (reflow), etc.
1999 - layout/generic/**/*
2000 - layout/printing/**/*
2001 - layout/tables/**/*
2010 url: https://wiki.mozilla.org/Gecko:Overview#Layout
2013 - 'Core::Layout: Block and Inline'
2014 - 'Core::Layout: Columns'
2015 - 'Core::Layout: Flexbox'
2016 - 'Core::Layout: Floats'
2017 - 'Core::Layout: Form Controls'
2018 - 'Core::Layout: Generated Content, Lists, and Counters'
2019 - 'Core::Layout: Grid'
2020 - 'Core::Layout: Images, Video, and HTML Frames'
2021 - 'Core::Layout: Positioned'
2022 - 'Core::Layout: Ruby'
2023 - 'Core::Layout: Scrolling and Overflow'
2024 - 'Core::Layout: Tables'
2025 - 'Core::Layout: Text and Fonts'
2026 - Core::Print Preview
2027 - 'Core::Printing: Output'
2039 machine_name: core_layout_engine
2041 - name: 'Core: Legacy HTML Parser'
2044 - parser/htmlparser/**/*
2048 url: http://www.mozilla.org/newlayout/doc/parser.html
2050 - 'Core::HTML: Parser'
2057 machine_name: core_legacy_html_parser
2059 - name: 'Core: libjar'
2060 description: The JAR handling code (protocol handler, stream implementation, and
2061 zipreader/zipwriter).
2063 - modules/libjar/**/*
2073 - 'Core::Networking: JAR'
2079 machine_name: core_libjar
2081 - name: 'Core: MathML'
2082 description: MathML is a low-level specification for describing mathematics which
2083 provides a foundation for the inclusion of mathematical expressions in Web pages.
2085 - layout/mathml/**/*
2087 group: dev-tech-mathml
2088 url: https://developer.mozilla.org/docs/Web/MathML
2095 machine_name: core_mathml
2097 - name: 'Core: Media Playback'
2098 description: HTML Media APIs, including Media Source Extensions and non-MSE video/audio
2099 element playback, and Encrypted Media Extensions. (WebRTC and WebAudio not included).
2102 - media/gmp-clearkey/**/*
2103 - media/libcubeb/**/*
2104 - media/libnestegg/**/*
2106 - media/libopus/**/*
2107 - media/libtheora/**/*
2108 - media/libtremor/**/*
2109 - media/libvorbis/**/*
2111 - dom/media/platforms/omx/**/*
2112 - dom/media/gmp/rlz/**/*
2127 machine_name: core_media_playback
2129 - name: 'Core: Media Transport'
2130 description: Pluggable transport for real-time media
2132 - dom/media/webrtc/transport/**/*
2136 - Core::WebRTC::Networking
2143 machine_name: core_media_transport
2145 - name: 'Core: Memory Allocator'
2146 description: Most things related to memory allocation in Gecko, including jemalloc,
2147 replace-malloc, DMD (dark matter detector), logalloc, etc.
2153 - Nicholas Nethercote
2161 machine_name: core_memory_allocator
2163 - name: 'Core: mfbt'
2164 description: mfbt is a collection of headers, macros, data structures, methods,
2165 and other functionality available for use and reuse throughout all Mozilla code
2166 (including SpiderMonkey and Gecko more broadly).
2178 machine_name: core_mfbt
2180 - name: 'Core: Moz2D (Graphics submodule)'
2181 description: Platform independent 2D graphics API
2186 url: https://wiki.mozilla.org/Platform/GFX/Moz2D
2194 machine_name: core_moz2d_graphics_submodule
2196 - name: 'Core: Mozglue'
2197 description: Glue library containing various low-level functionality, including
2198 a dynamic linker for Android, a DLL block list for Windows, etc.
2206 - Kartikaya Gupta (mozglue/android)
2211 machine_name: core_mozglue
2213 - name: 'Core: MSCOM'
2214 description: Integration with Microsoft Distributed COM
2225 - 'Core::IPC: MSCOM'
2231 machine_name: core_mscom
2233 - name: 'Core: Necko'
2234 description: The Mozilla Networking Library
2238 - netwerk/build/**/*
2239 - netwerk/cache2/**/*
2241 - netwerk/locales/**/*
2243 - netwerk/protocol/**/*
2244 - netwerk/socket/**/*
2245 - netwerk/streamconv/**/*
2246 - netwerk/system/**/*
2251 - dom/websocket/**/*
2252 - uriloader/prefetch/**/*
2253 - uriloader/preload/**/*
2256 - Dragana Damjanovic
2258 - Christian Biesinger
2269 group: dev-tech-network
2270 url: :ref:`Networking`
2273 - 'Core::Networking: Cache'
2274 - 'Core::Networking: Cookies'
2275 - 'Core::Networking: FTP'
2276 - 'Core::Networking: File'
2277 - 'Core::Networking: HTTP'
2278 - 'Core::Networking: JAR'
2279 - 'Core::Networking: Websockets'
2280 - 'Core::DOM: Networking'
2286 machine_name: core_necko
2288 - name: 'Core: NodeJS usage, tools, and style'
2289 description: Advises on the use of NodeJS and npm packages at build and runtime.
2290 Reviews additions/upgrades/removals of vendored npm packages. Works with appropriate
2291 teams to maintain automated license and security audits of npm packages. Works
2292 with the security team and relevant developers to respond to vulnerabilities
2293 in NodeJS and vendored npm packages.
2298 # TODO: and others as appropriate
2302 url: 'https://wiki.mozilla.org/Firefox/firefox-dev, #nodejs on slack'
2311 machine_name: core_nodejs_usage_tools_and_style
2313 - name: 'Core: NSPR'
2314 description: Netscape Portable Runtime
2320 group: dev-tech-nspr
2328 machine_name: core_nspr
2331 description: Rendering code to display documents encoded in the ISO 32000-1 PDF
2334 - toolkit/components/pdfjs/**/*
2342 url: https://github.com/mozilla/pdf.js
2349 machine_name: core_pdf
2351 - name: 'Core: Permissions'
2354 - extensions/permissions/**/*
2363 - Christian Biesinger
2368 - 'Core :: Permission Manager'
2375 machine_name: core_permissions
2377 - name: 'Core: Plugins'
2378 description: ' NPAPI Plugin support.'
2390 url: https://wiki.mozilla.org/Plugins
2395 machine_name: core_plugins
2397 - name: 'Core: Preferences'
2398 description: Preference library
2400 - modules/libpref/**/*
2403 - Nicholas Nethercote
2409 - 'Core::Preferences: Backend'
2415 machine_name: core_preferences
2417 - name: 'Core: Private Browsing'
2418 description: Implementation of the Private Browsing mode, and the integration
2419 of other modules with Private Browsing APIs.
2422 # Implementation and consumers of Private Browsing APIs in nsILoadContext,
2423 # nsIPrivateBrowsingChannel, PrivateBrowsingUtils.sys.mjs and the related glue code.'
2431 url: https://wiki.mozilla.org/Private_Browsing
2433 - Firefox::Private Browsing
2438 machine_name: core_private_browsing
2440 - name: 'Core: Privilege Manager'
2441 description: Caps is the capabilities-based security system.
2450 url: http://www.mozilla.org/projects/security/components/index.html
2452 - 'Core::Security: CAPS'
2458 machine_name: core_privilege_manager
2460 - name: 'Core: Push Notifications'
2461 description: Push is a way for application developers to send messages to their
2472 - 'Core::DOM: Notifications'
2476 machine_name: core_push_notifications
2478 - name: 'Core: Sandboxing (Linux)'
2479 description: Sandboxing for the Linux platform
2481 - security/sandbox/linux/**/*
2484 url: https://wiki.mozilla.org/Security/Sandbox
2486 - 'Core::Security: Process Sandboxing'
2491 machine_name: core_sandboxing_linux
2493 - name: 'Core: Sandboxing (OSX)'
2494 description: Sandboxing for the OSX platform
2496 - security/sandbox/mac/**/*
2499 url: https://wiki.mozilla.org/Security/Sandbox
2501 - 'Core::Security: Process Sandboxing'
2505 machine_name: core_sandboxing_osx
2507 - name: 'Core: Sandboxing (Windows)'
2508 description: Sandboxing for the Windows platform
2510 - security/sandbox/win/**/*
2520 url: https://wiki.mozilla.org/Security/Sandbox
2522 - 'Core::Security: Process Sandboxing'
2527 machine_name: core_sandboxing_windows
2529 - name: 'Core: security'
2530 description: Crypto/PKI code, including NSS (Network Security Services) and JSS
2543 group: dev-tech-crypto
2544 url: :ref:`Network Security Services (NSS)`
2549 - 'Core::Security: S/MIME'
2562 machine_name: core_security
2564 - name: 'Core: Security - Mozilla PSM Glue'
2565 description: Personal Security Manager
2567 - security/manager/**/*
2570 - Kai Engert (2001-2012)
2571 group: dev-tech-crypto
2573 - 'Core::Security: PSM'
2582 machine_name: core_security_mozilla_psm_glue
2584 - machine_name: core_security_rlbox
2585 name: Security - RLBox
2586 description: Sandboxing using WASM/RLBox libraries.
2590 - third_party/rlbox_wasm2c_sandbox
2600 - 'Core::Security: RLBox'
2601 - name: 'Core: Static analysis & rewriting for C++'
2602 description: Tools for checking C++ code looking for problems at compile time,
2603 plus tools for automated rewriting of C++ code.
2605 - build/clang-plugin/**/*
2606 - tools/rewriting/**/*
2607 # TODO among other out of tree tools
2610 - Birunthan Mohanathas
2614 - Core::Rewriting & Analysis
2621 machine_name: core_static_analysis_rewriting_for_c
2623 - name: 'Core: storage'
2624 description: Storage APIs with a SQLite backend
2626 - third_party/sqlite3/**/*
2630 url: http://developer.mozilla.org/en/docs/Storage
2632 - Toolkit::Storage, Core::SQL
2640 machine_name: core_storage
2642 - name: 'Core: String'
2647 group: dev-tech-xpcom
2648 url: :ref:`String Guide`
2655 machine_name: core_string
2657 - name: 'Core: Style System'
2658 description: CSS style sheet handling; style data computation
2669 url: https://wiki.mozilla.org/Gecko:Overview#Style_System
2671 - Core::CSS Parsing and Computation
2672 - 'Core::DOM: CSS Object Model'
2678 machine_name: core_style_system
2681 description: Scalable Vector Graphics
2688 url: https://developer.mozilla.org/docs/Web/SVG
2698 machine_name: core_svg
2700 - name: 'Core: UA String'
2701 description: User Agent String
2703 - netwerk/protocol/http/**/*
2706 url: https://developer.mozilla.org/docs/Web/HTTP/Headers/User-Agent/Firefox
2708 - 'Core::Networking: HTTP'
2714 machine_name: core_ua_string
2716 - name: 'Core: View System'
2717 description: The View Manager is responsible for handling "heavyweight" rendering
2718 (some clipping, compositing) and event handling tasks.
2726 - 'Core::Layout: View Rendering'
2732 machine_name: core_view_system
2734 - name: 'Core: Web Audio'
2735 description: Support for the W3C Web Audio API specification.
2737 - dom/media/webaudio/**/*
2742 url: https://wiki.mozilla.org/Web_Audio_API
2750 machine_name: core_web_audio
2752 - name: 'Core: Web Painting'
2753 description: painting, display lists, and layer construction
2755 - layout/painting/**/*
2756 # TODO: "the display list and layer related methods on nsIFrame and its subclasses"
2759 url: :ref:`Layout & CSS`
2761 - 'Core::Layout: Web Painting'
2772 machine_name: core_web_painting
2774 - name: 'Core: Web Workers'
2787 url: https://developer.mozilla.org/docs/Web/API/Web_Workers_API/Using_web_workers
2789 - 'Core::DOM: Workers'
2790 review_group: dom-worker-reviewers
2796 machine_name: core_web_workers
2798 - name: 'Core: WebGPU (Graphics submodule)'
2799 description: WebGPU implementation
2802 - gfx/wgpu_bindings/**/*
2803 - third_party/rust/naga/**/*
2804 - third_party/rust/wgpu-core/**/*
2805 - third_party/rust/wgpu-hal/**/*
2806 - third_party/rust/wgpu-types/**/*
2807 - testing/web-platform/tests/webgpu/**/*
2808 - testing/web-platform/meta/webgpu/**/*
2809 - testing/web-platform/mozilla/tests/webgpu/**/*
2810 - testing/web-platform/mozilla/meta/webgpu/**/*
2813 url: https://wiki.mozilla.org/Platform/GFX/WebGPU
2815 - Core::Graphics::WebGPU
2816 review_group: webgpu-reviewers
2828 machine_name: core_webgpu_graphics_submodule
2830 - name: 'Core: WebRTC'
2831 description: WebRTC is responsible for realtime audio and video communication,
2832 as well as related issues like low-level camera and microphone access
2835 # TODO: also see submodules "WebRTC Media" and "WebRTC Signaling"
2840 url: https://wiki.mozilla.org/Media/webrtc
2843 - Core::WebRTC Networking
2850 machine_name: core_webrtc
2852 - name: 'Core: WebVR'
2853 description: Gecko's implementation of WebVR (Virtual Reality) functionality,
2854 including API, devices, graphics and integration
2860 - Vladimir Vukicevic
2863 url: https://mozvr.com/
2872 - name: 'Core: WebRTC Media'
2873 description: Submodule of WebRTC responsible for access to media input devices
2874 (microphones, cameras, screen capture), as well as realtime audiovisual
2875 codecs and packetization.
2878 - dom/media/webrtc/**/*
2879 - dom/media/systemservices/**/*
2885 url: https://wiki.mozilla.org/Media/webrtc
2887 - Core::WebRTC (Audio/Video)
2894 machine_name: core_webrtc_media
2896 - name: 'Core: WebRTC Signaling'
2897 description: Submodule of WebRTC responsible for implementation of PeerConnection
2898 API, WebRTC identity, and SDP/JSEP handling
2900 - media/webrtc/signaling/**/*
2905 url: https://wiki.mozilla.org/Media/webrtc
2907 - Core::WebRTC (Signaling)
2915 machine_name: core_webrtc_signaling
2916 machine_name: core_webvr
2918 - name: 'Core: Widget'
2919 description: Top level Widget
2924 - Vladimir Vukicevic
2931 - Core::Drag and Drop
2933 - 'Core::Printing: Setup'
2936 machine_name: core_widget
2938 - name: 'Core: Widget - Android'
2939 description: This is part of the [https://wiki.mozilla.org/Modules/Core#GeckoView
2944 machine_name: core_widget_android
2946 - name: 'Core: Widget - GTK'
2947 description: GTK widget support
2954 url: http://www.mozilla.org/ports/gtk/
2956 - 'Core::Widget: Gtk'
2961 machine_name: core_widget_gtk
2963 - name: 'Core: Widget - Headless'
2964 description: Headless widget support
2966 - widget/headless/**/*
2975 machine_name: core_widget_headless
2977 - name: 'Core: Widget - macOS'
2978 description: ' macOS widget support'
2991 - 'Core::Widget: Cocoa'
2997 machine_name: core_widget_macos
2999 - name: 'Core: Widget - Windows'
3000 description: Windows widget support
3002 - widget/windows/**/*
3008 - Vladimir Vukicevic
3011 - Christian Biesinger
3013 - Josh 'timeless' Soref
3020 - 'Core::Widget: Win32'
3026 machine_name: core_widget_windows
3029 description: XML in Mozilla, including XML, XHTML, Namespaces in XML, Associating
3030 Style Sheets with XML Documents, XML Linking and XML Extras. XML-related things
3031 that are not covered by more specific projects.
3047 machine_name: core_xml
3049 - name: 'Core: XPApps'
3050 description: Cross-Platform Applications, mostly Navigator front end and application
3055 group: dev-apps-seamonkey
3059 - Josh 'timeless' Soref
3062 machine_name: core_xpapps
3064 - name: 'Core: XPCOM'
3065 description: The cross-platform object model and core data structures.
3071 - xpcom/components/**/*
3075 - xpcom/reflect/**/*
3079 - xpcom/threads/**/*
3080 - xpcom/windbgdlg/**/*
3092 review_group: xpcom-reviewers
3102 machine_name: core_xpcom
3104 - name: 'Core: XPConnect'
3105 description: Deep Magic
3124 machine_name: core_xpconnect
3126 - name: 'Core: XPIDL'
3127 description: Cross-platform IDL compiler; produces .h C++ header files and .xpt
3128 runtime type description files from .idl interface description files.
3130 - xpcom/idl-parser/**/*
3137 - Josh 'timeless' Soref
3138 group: dev-tech-xpcom
3144 machine_name: core_xpidl
3146 - name: 'Core: XSLT Processor'
3147 description: XSLT transformations processor
3155 group: dev-tech-xslt
3156 url: https://developer.mozilla.org/docs/Web/XSLT
3162 machine_name: core_xslt_processor
3164 - name: Desktop Firefox
3165 description: Standalone Web Browser.
3178 - Tim Guan-tin Chien
3188 - Matthew Noorenberghe
3210 - name: Add-ons Manager
3211 description: Extension management back-end.
3213 - toolkit/mozapps/extensions/**/*
3227 machine_name: addons_manager
3229 - name: Add-ons Manager UI
3230 description: about:addons.
3232 - toolkit/mozapps/extensions/content/**/*
3245 machine_name: addons_manager_ui
3247 - name: Application Update
3248 description: The application update services.
3250 - toolkit/mozapps/update/**/*
3257 machine_name: application_update
3259 - name: Bookmarks & History
3260 description: The bookmarks and history services (Places).
3262 - browser/components/places/**/*
3263 - toolkit/components/places/**/*
3272 - Firefox::Bookmarks & History
3274 review_group: places-reviewers
3282 machine_name: bookmarks_history
3284 - name: Desktop Theme
3285 description: The style rules used in the desktop UI.
3287 - browser/themes/**/*
3288 - toolkit/themes/**/*
3303 machine_name: desktop_theme
3306 description: The main browser UI except where covered by more specific submodules.
3308 - browser/base/content/**/*
3321 machine_name: desktop_ui
3323 - name: Download Manager
3324 description: The downloads UI and service.
3326 - browser/components/downloads/**/*
3327 - toolkit/mozapps/downloads/**/*
3328 - uriloader/exthandler/**/*
3338 machine_name: download_manager
3340 - name: Enterprise Policies
3341 description: System policies for controlling Firefox.
3343 - browser/components/enterprisepolicies/**/*
3348 machine_name: enterprise_policies
3350 - name: Experiments/Rollouts
3351 description: Desktop clients for our experiments and off-train deployments
3354 - toolkit/components/normandy/**/*
3355 - toolkit/components/nimbus/**/*
3361 - Firefox::Nimbus Desktop Client
3362 url: https://experimenter.info/
3368 machine_name: normandy
3370 - machine_name: firefox_view
3372 description: The Firefox View page and its modules.
3374 - browser/components/firefoxview/**/*
3382 - name: Form Autofill
3383 description: Form detection and autocomplete.
3385 - browser/extensions/formautofill/**/*
3386 - toolkit/components/satchel/**/*
3389 - Matthew Noorenberghe
3395 machine_name: form_autofill
3397 - name: In-product Messaging
3398 description: The system for delivering in-product messaging.
3400 - toolkit/components/messaging-system/**/*
3403 - Firefox::Messaging System
3411 machine_name: inproduct_messaging
3413 - name: Launcher Process
3414 description: Windows process for bootstrapping the browser process.
3416 - browser/app/winlauncher/**/*
3422 - Firefox::Launcher Process
3429 machine_name: launcher_process
3431 - machine_name: localization
3433 description: Tooling to enable translation and facilitate localization.
3441 - name: New Tab Page
3442 description: The new tab/home page.
3444 - browser/components/newtab/**/*
3447 - Firefox::New Tab Page
3455 machine_name: new_tab_page
3458 description: The onboarding experience including UI tours.
3460 - browser/components/uitour/**/*
3468 machine_name: onboarding
3470 - name: Password Manager
3471 description: Managing, saving and filling logins.
3473 - toolkit/components/passwordmgr/**/*
3474 - browser/components/aboutlogins/**/*
3477 - Matthew Noorenberghe
3482 url: https://wiki.mozilla.org/Toolkit:Password_Manager
3484 - Toolkit::Password Manager
3485 - 'Toolkit::Password Manager: Site'
3487 - Firefox::about:logins
3494 machine_name: password_manager
3496 - machine_name: firefox_pip
3497 name: Picture-in-Picture
3498 description: A component that allows video elements to be pulled out into
3499 an always-on-top window.
3501 - toolkit/components/pictureinpicture
3502 - browser/extensions/pictureinpicture
3512 - name: Profile Migration
3513 description: Migrating data from other browsers.
3515 - browser/components/migration/**/*
3523 machine_name: profile_migration
3526 description: Code relating to Screenshots functionality
3528 - browser/extensions/screenshots/**/*
3529 - browser/components/screenshots/**/*
3537 - Firefox::Screenshots
3543 machine_name: screenshots
3545 - name: Search and Address Bar
3546 description: The search service, address bar and address bar autocomplete.
3548 - browser/components/search/**/*
3549 - browser/components/urlbar/**/*
3550 - toolkit/components/search/**/*
3553 - Firefox::Address Bar
3566 machine_name: search_and_address_bar
3568 - name: Security and Privacy UI
3569 description: The front-end to our security and privacy features, including
3570 Protections UI, Site Identity, Site Permissions and Certificate Errors
3572 - browser/components/protections/**/*
3573 - browser/components/controlcenter/**/*
3577 - Nihanth Subramanya
3582 - Firefox::Protections UI
3583 - Firefox::Site Identity
3584 - Firefox::Site Permissions
3589 machine_name: security_and_privacy_ui
3591 - name: Session Restore
3592 description: Restoring a user's session after starting Firefox.
3594 - browser/components/sessionstore/**/*
3595 - toolkit/components/sessionstore/**/*
3605 - Firefox::Session Restore
3612 machine_name: session_restore
3615 description: The front-end settings user interface.
3617 - browser/components/preferences/**/*
3618 - browser/themes/*/preferences
3619 - toolkit/mozapps/preferences
3631 machine_name: settings_ui
3633 - name: Tabbed Browser
3634 description: The UI component controlling browser tabs.
3636 - browser/base/content/tabbrowser*
3637 - browser/base/content/browser-allTabsMenu.js
3638 - browser/base/content/browser-ctrlTab.js
3639 - browser/base/content/browser-fullZoom.js
3640 - browser/modules/AsyncTabSwitcher.sys.mjs
3641 - browser/modules/NewTabPagePreloading.sys.mjs
3642 - browser/modules/OpenInTabsUtils.sys.mjs
3643 - browser/modules/TabsList.sys.mjs
3644 - browser/modules/TabUnloader.sys.mjs
3647 - Firefox::Tabbed Browser
3656 machine_name: tabbed_browser
3658 - name: Windows Installer
3659 description: The installer for Windows.
3661 - browser/installer/**/*
3662 - toolkit/mozapps/installer/**/*
3665 - Firefox::Installer
3671 machine_name: windows_installer
3672 machine_name: desktop_firefox
3674 - machine_name: devtools
3676 description: Mozilla Developer Tools
3702 - Steve Fink (heapsnapshot code)
3712 - Panagiotis Astithas
3730 url: http://firefox-dev.tools/
3733 - machine_name: javascript_usage
3734 name: JavaScript usage, tools, and style
3735 description: Aspects of JavaScript use such as language feature usage, tooling
3736 such as lint configurations, formatting and naming style.
3738 - .eslintrc-test-paths.js
3739 - '**/.eslintignore'
3741 - tools/lint/eslint/**/*
3758 - machine_name: mozharness
3760 description: Configuration-driven script harness.
3762 - testing/mozharness/**/*
3775 - 'Release Engineering :: Applications: MozharnessCore'
3776 - machine_name: python_usage
3777 name: Python usage, tools, and style
3778 description: Aspects of Python use such as tooling, formatting and naming style
3780 - tools/lint/python/**/*
3790 - 'Developer Infrastructure :: Lint and Formatting'
3792 - machine_name: remote_protocol
3793 name: Remote Protocol
3794 description: Low-level remote protocol exposing interfaces for inspecting state
3795 and controlling execution of web documents, instrumenting various subsystems
3796 in the browser, simulating user interaction for automation purposes, and for
3797 subscribing to updates from the aforementioned.
3803 url: https://firefox-source-docs.mozilla.org/remote/
3812 - machine_name: remote_protocol_agent
3814 description: Underlying transport layer and server to allow remoting of Firefox
3815 for automation and debugging.
3820 - remote/marionette/*
3821 - remote/webdriver-bidi/*
3826 - Maja Frydrychowicz
3830 - 'Remote Protocol :: Agent'
3838 - machine_name: remote_protocol_cdp
3840 description: The core implementation for CDP support. Please file domain specific
3841 issues and requests under the appropriate CDP-prefixed Remote Protocol component.
3848 - Maja Frydrychowicz
3852 - 'Remote Protocol :: CDP'
3860 - machine_name: remote_protocol_marionette
3862 description: Marionette is a remote protocol that lets out-of-process programs
3863 communicate with, instrument, and control Gecko-based browsers. Combined
3864 with geckodriver, this forms our WebDriver classic implementation.
3866 - remote/marionette/*
3871 - Maja Frydrychowicz
3874 - 'Remote Protocol :: Marionette'
3875 group: dev-webdriver
3883 - machine_name: remote_protocol_webdriver_bidi
3884 name: WebDriver BiDi
3885 description: W3C WebDriver BiDi implementation for Gecko-based browsers.
3887 - remote/webdriver-bidi/*
3890 - 'Remote Protocol :: WebDriver BiDi'
3891 group: dev-webdriver
3899 - machine_name: sync
3901 description: Firefox Sync client
3903 - services/sync/**/*
3916 url: https://wiki.mozilla.org/Services/Process/Code_Review
3920 - machine_name: testing_firefox_ui
3922 description: Firefox UI test framework.
3924 - testing/firefox-ui/**/*
3927 - Maja Frydrychowicz
3929 - 'Testing :: Firefox UI'
3937 - machine_name: testing_geckodriver
3939 description: Proxy for using W3C WebDriver-compatible clients to interact with
3940 Gecko-based browsers.
3942 - testing/geckodriver/**/*
3950 - 'Testing :: geckodriver'
3951 group: dev-webdriver
3953 - machine_name: testing_gtest
3955 description: GTest test harness.
3957 - testing/gtest/**/*
3964 - 'Testing :: GTest'
3966 - machine_name: testing_marionette_client_harness
3967 name: Marionette Client & Harness
3968 description: Python client and harness for the Marionette remote protocol implementation.
3970 - testing/marionette/**/*
3975 - Maja Frydrychowicz
3978 - 'Testing :: Marionette Client & Harness'
3986 - machine_name: testing_mochitest
3988 description: Mochitest test framework
3990 - testing/mochitest/**/*
3999 - 'Testing :: Mochitest'
4000 - machine_name: testing_mozbase
4002 description: Base modules used for implementing test components.
4016 - 'Testing :: Mozbase'
4017 - 'Testing :: Mozbase Rust'
4018 - machine_name: testing_performance_testing
4019 name: Performance Testing
4021 This module encompasses all of our performance testing projects, e.g. Raptor, Talos,
4022 MozPerfTest, AWSY, JSShell, mach try perf, etc.. See our PerfDocs for more information on
4023 the owners/peers of the various components (linked below).
4025 - testing/raptor/**/*
4026 - testing/talos/**/*
4027 - python/mozperftest/**/*
4029 - testing/jsshell/**/*
4030 - tools/lint/perfdocs/**/*
4031 - testing/perfdocs/**/*
4032 - testing/performance/**/*
4033 - testing/condprofile/**/*
4034 - tools/browsertime/**/*
4035 - tools/tryselect/selectors/perf.py
4045 - 'Testing :: Raptor'
4046 - 'Testing :: Talos'
4048 - 'Testing :: Performance'
4049 - 'Testing :: mozperftest'
4050 - 'Testing :: Condprofile'
4051 url: :ref:`Performance Testing`
4052 - machine_name: testing_reftest
4053 name: Reftest (+ jsreftest + crashtest)
4054 description: Reftest test framework
4056 - layout/tools/reftest/**/*
4065 - 'Testing :: Reftest'
4066 - machine_name: testing_tryselect
4068 description: Frontend for selecting jobs on the try server.
4070 - tools/tryselect/**/*
4079 - 'Developer Infrastructure :: Try'
4080 - machine_name: testing_web_platform_tests_infrastructure
4081 name: web-platform-tests infrastructure
4082 description: Infrastructure for running the cross-browser web-platform-tests
4084 - testing/web-platform/**/*
4085 - testing/web-platform/tests/tools/**/*
4087 - testing/web-platform/tests/**/*
4088 - testing/web-platform/meta/**/*
4089 - testing/web-platform/mozilla/**/*
4095 - 'Testing :: web-platform-tests'
4096 - machine_name: testing_xpcshell
4098 description: XPCShell test harness.
4100 - testing/xpcshell/**/*
4108 - Testing::XPCShell Harness
4110 description: Components shared between desktop and mobile browsers.
4119 - Matthew Noorenberghe
4131 - name: Application Startup
4132 description: The profile system and startup process before the front-end launches.
4134 - toolkit/profile/**/*
4135 - toolkit/components/remote/**/*
4142 machine_name: application_startup
4146 The core infrastructure in the Firefox client to send back telemetry
4147 data. Includes the common mechanisms to record, view and submit data: Legacy
4148 Telemetry and Glean (via Firefox on Glean (FOG)). This module
4149 does ''not'' include responsibility for every piece of submitted Telemetry
4150 data. Each team/module is responsible for their own measurements (histograms,
4151 scalars, other ping submissions, etc.).
4153 - toolkit/components/glean/**/*
4154 - toolkit/components/telemetry/**/*
4155 - toolkit/content/aboutTelemetry.*
4160 url: :ref:`Telemetry`
4168 machine_name: telemetry
4171 description: The base widgets used throughout the UI.
4173 - toolkit/content/widgets/**/*
4185 machine_name: ui_widgets
4187 - name: Webextensions
4188 description: Webextension APIs and integration.
4190 - browser/components/extensions/**/*
4191 - toolkit/components/extensions/**/*
4203 machine_name: webextensions
4204 machine_name: toolkit
4205 - machine_name: translation
4207 description: Support for translation in Firefox, and the infrastructure to train
4208 new translation language models.
4210 - toolkit/components/translations/**/*
4211 - toolkit/components/translation/**/*
4212 - browser/components/translations/**/*
4222 url: https://github.com/mozilla/firefox-translations-training https://github.com/mozilla/firefox-translations-models
4223 https://github.com/mozilla/firefox-translations-evaluations https://github.com/mozilla/firefox-translations
4225 - Firefox::Translation
4226 review_group: translations-reviewers
4227 - machine_name: url_classifier
4228 name: URL Classifier
4229 description: Database and list-based classification of URL resources, such as
4230 Tracking Protection and SafeBrowsing.
4232 - toolkit/components/url-classifier/**/*
4233 - netwerk/url-classifier/**/*
4242 url: https://github.com/mozilla-services/shavar https://wiki.mozilla.org/Phishing_Protection
4243 https://wiki.mozilla.org/Security/Tracking_protection https://wiki.mozilla.org/Security/Application_Reputation
4251 config: e50c5804c707f1bb9672613069dce9afdd5339cc
4252 export: afeef31384cadb7f29198b7e67d0fa9665d8ce6a