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-10-06T16:56:18.186997'
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
217 name: Daisuke Akatsuka
253 name: Alessio Placitelli
285 name: Dragana Damjanovic
321 name: Emilio Cobos Álvarez
325 name: Masatoshi Kimura
347 name: Nick Fitzgerald
351 name: Francesco Lodolo
367 name: Gabriel Bustamante
375 name: Gian-Carlo Pascutto
401 name: Gabriele Svelto
405 name: Haik Aftandilian
413 name: Hiroyuki Ikezoe
425 name: Jan Honza Odvarko
449 name: Jan-Erik Rediger
469 name: Julian Descottes
497 name: Jan-Ivar Bruaroey
529 name: Jonathan Almeida
561 name: Jules Simplicio
568 name: Jean-Yves Avenard
620 name: Dzmitry Malyshau
632 name: Lougenia Bailey
648 name: Marco Castelluccio
664 name: Masayuki Nakano
673 nick: MatsPalmgren_bugz
680 name: Andrew McCreight
712 name: Morgan Reschenberg
752 name: Nicolas Chevobbe
764 name: Niklas Baumgardner
784 name: Alexandre Poirot
792 name: Andrew Overholt
812 name: Andreas Pehrson
820 name: Peter Van der Beken
864 name: Alexandra Borovova
892 name: Shravan Narayan
908 name: Greg Mierzwinski
924 name: Martin Stránský
931 name: Sylvestre Ledru
947 name: Teodor Tanasoaia
978 name: Toshihito Kikuchi
1014 name: William Durand
1026 name: Yulia Startsev
1037 name: Zibi Braniecki
1045 name: Tomislav Jovanovic
1048 - name: firefox-toplevel
1049 description: The top level directory for the Firefox/Gecko tree. Owned by the
1064 machine_name: _firefoxtoplevel
1066 - machine_name: code_coverage
1068 description: Tools for code coverage instrumentation, and coverage data parsing
1071 - tools/code-coverage/**/*
1072 - python/mozbuild/mozbuild/codecoverage/**/*
1073 - testing/mozharness/mozharness/mozilla/testing/codecoverage.py
1082 - 'Testing :: Code Coverage'
1083 - name: 'Core: Accessibility'
1084 description: Support for platform accessibility APIs. Accessibility APIs are used
1085 by 3rd party software like screen readers, screen magnifiers, and voice dictation
1086 software, which need information about document content and UI controls, as
1087 well as important events like changes of focus.
1101 group: dev-accessibility
1102 url: https://developer.mozilla.org/docs/Web/Accessibility
1104 - Core::Disability Access APIs
1111 machine_name: core_accessibility
1113 - name: 'Core: Animation'
1114 description: 'Declarative animations: CSS animations, CSS transitions, Web Animations
1115 API, and off-main thread animations.'
1117 - dom/animation/**/*
1118 # TODO "and animation-related and interpolation-related code
1119 # in layout/style, gfx/layers, servo/components/style and servo/ports/gecko
1123 - Core::DOM::Animation
1124 - Core::CSS Transitions and Animations
1132 machine_name: core_animation
1134 - name: 'Core: Anti-Tracking'
1135 description: Tracking detection and content-blocking.
1137 - toolkit/components/antitracking/**/*
1138 # several files under browser/ and netwerk/url-classifier/ **TODO**
1146 - 'Core::Privacy: Anti-Tracking'
1154 machine_name: core_antitracking
1156 - name: 'Core: APZ (Graphics submodule)'
1157 description: Asynchronous panning and zooming
1159 - gfx/layers/apz/**/*
1166 url: https://wiki.mozilla.org/Platform/GFX/APZ
1168 - Core::Panning and Zooming
1176 machine_name: core_apz_graphics_submodule
1178 - name: 'Core: Browser WebAPI'
1179 description: Web API for rendering apps, browser windows and widgets.
1181 - dom/browser-element/**/*
1192 machine_name: core_browser_webapi
1194 - name: 'Core: Build and Release Tools'
1195 description: Tools related to build and release automation and configuration of
1198 - tools/update-packaging/**/*
1199 - tools/update-verify/**/*
1203 group: release-engineering
1204 url: https://wiki.mozilla.org/ReleaseEngineering
1206 - Release Engineering::*
1213 machine_name: core_build_and_release_tools
1215 - name: 'Core: Build Config'
1216 description: The build system for Gecko and several mozilla.org hosted Gecko-based
1221 - python/mozbuild/**/*
1222 - browser/config/mozconfigs/**/*
1240 url: :ref:`Build System`
1242 - Core::Build Config
1249 - name: 'Core: Build Config - Fennec'
1250 description: Submodule of the build config covering Fennec's build system
1255 - Core::Build Config
1259 machine_name: core_build_config_fennec
1261 - name: 'Core: Build Config - Taskgraph'
1262 description: Support for task-graph generation in decision, action, and cron
1263 tasks, including configuration of all tasks including those for CI, nightlies,
1264 and releases; as well as Docker and VM images used to execute those tasks.
1269 - Firefox Build System::Task Configuration
1285 machine_name: core_build_config_taskgraph
1286 machine_name: core_build_config
1288 - name: 'Core: Code Analysis and Debugging Tools'
1289 description: Tools for debugging Mozilla code or for analyzing speed, memory use,
1290 and other characteristics of it.
1293 - tools/leak-gauge/**/*
1294 - tools/performance/**/*
1297 group: dev-performance
1301 machine_name: core_code_analysis_and_debugging_tools
1303 - name: 'Core: Content Security'
1304 description: 'Native content-based security features enforced in the ContentSecurityManager,
1305 including: Content Security Policy (CSP), Mixed Content Blocker (MCB), Referrer
1306 Policy, Subresource Integrity (SRI), Cross-Origin Resource Sharing (CORS), X-Frame-Options,
1307 X-Content-Type-Options: nosniff, HTTPS-Only-Mode, Sanitizer API, Sec-Fetch Metadata,
1308 and top-level data: URI blocking.'
1320 - 'Core::DOM: Security'
1328 machine_name: core_content_security
1330 - name: 'Core: Cookies'
1333 - netwerk/cookie/**/*
1342 - Christian Biesinger
1348 - 'Core::Networking: Cookies'
1357 machine_name: core_cookies
1359 - name: 'Core: Crash reporting'
1360 description: Infrastructure and tools used to generate, submit and process crash
1361 reports. This includes the in-tree google-breakpad fork, the crash report generation
1362 machinery as well as the host tools used to dump symbols, analyse minidumps
1363 and generate stack traces.
1365 - toolkit/crashreporter/**/*
1366 - toolkit/components/crashes/**/*
1367 - tools/crashreporter/**/*
1368 - ipc/glue/CrashReporter*
1369 - mobile/android/geckoview/src/main/java/org/mozilla/geckoview/CrashReporter.java
1374 url: :ref:`Crash Reporter`
1376 - Toolkit::Crash Reporting
1382 machine_name: core_crash_reporting
1384 - machine_name: core_credentials
1385 name: 'Core: Credentials'
1386 description: API Surface for FedCM and WebAuthn
1388 - toolkit/components/credentialmanagement/**/*
1389 - browser/components/credentialmanager/**/*
1390 - dom/credentialmanagement/**/*
1402 - 'Core::DOM: Credential Management'
1403 - 'Core::DOM: Web Authentication'
1405 - name: 'Core: C++/Rust usage, tools, and style'
1406 description: Aspects of C++ use such as language feature usage, standard library
1407 versions/usage, compiler/toolchain versions, formatting and naming style, and
1408 aspects of Rust use as needs arise
1410 # NOTE: more of a "meta module" -- who do we ask when we want to do the above?
1411 # Includes/globs include where we define coding style, etc... (i.e. documentation)
1412 # - docs/code-quality/**/*
1413 # - docs/testing-rust-code/**/*
1414 # - docs/writing-rust-code/**/*
1429 machine_name: core_crust_usage_tools_and_style
1431 - name: 'Core: Cycle Collector'
1432 description: Code to break and collect objects within reference cycles
1434 - xpcom/base/nsCycleCollect*
1435 # TODO "and some support headers"
1436 # NOTE: not always clean lines between modules and file boundaries. This module is deeply intertwines with other modules (e.g. XPCOM)
1442 - Core::Cycle Collector
1448 machine_name: core_cycle_collector
1450 - name: 'Core: DLL Services'
1451 description: Windows dynamic linker instrumentation and blocking
1453 - toolkit/xre/dllservices/**/*
1459 - Core::DLL Services
1464 machine_name: core_dll_services
1466 - name: 'Core: docshell'
1470 - uriloader/base/**/*
1476 - Christian Biesinger
1482 - Core::Document Navigation
1489 machine_name: core_docshell
1491 - name: 'Core: Document Object Model'
1495 exclude_module_paths: true
1512 url: http://developer.mozilla.org/en/docs/DOM
1515 - 'Core::DOM: Core & HTML'
1516 review_group: dom-core
1532 machine_name: core_document_object_model
1534 - name: 'Core: DOM File'
1535 description: DOM Blob, File and FileSystem APIs
1538 - dom/filesystem/**/*
1541 url: http://developer.mozilla.org/en/docs/DOM
1548 machine_name: core_dom_file
1550 - machine_name: core_dom_streams
1551 name: 'Core: DOM Streams'
1552 description: Streams Specification implementation
1563 url: http://developer.mozilla.org/en/docs/DOM
1566 - 'Core::DOM: Streams'
1569 - name: 'Core: Editor'
1584 machine_name: core_editor
1586 - name: 'Core: Event Handling'
1587 description: DOM Events and Event Handling
1590 # TODO "and event handling related code elsewhere"
1595 url: http://developer.mozilla.org/en/docs/DOM
1597 - 'Core::DOM: Events'
1598 - 'Core::DOM: UI Events & Focus Handling'
1604 machine_name: core_event_handling
1606 - machine_name: core_firefox_source_documentation
1607 name: 'Core: Firefox Source Documentation'
1608 description: The infrastructure platform used to generate Firefox's source documentation,
1609 excluding editorial control over the content.
1612 - tools/moztreedocs/
1619 - Developer Infrastructure::Source Documentation
1620 url: https://firefox-source-docs.mozilla.org/
1621 - name: 'Core: Gecko Profiler'
1622 description: Gecko's built-in profiler
1624 - tools/profiler/**/*
1625 - mozglue/baseprofiler/**/*
1630 - Shu-yu Guo (JS integration)
1631 - Thinker Lee (TaskTracer)
1632 - Cervantes Yu (TaskTracer)
1633 - Nicholas Nethercote
1639 url: https://firefox-source-docs.mozilla.org/tools/profiler/
1641 - Core::Gecko Profiler
1648 machine_name: core_gecko_profiler
1650 - name: 'Core: GeckoView'
1651 description: Framework for embedding Gecko into Android applications
1653 - mobile/android/**/*
1654 - widget/android/**/*
1666 url: https://wiki.mozilla.org/Mobile/GeckoView
1668 - GeckoView::General
1676 machine_name: core_geckoview
1678 - name: 'Core: Global Key Bindings'
1679 description: Global hot keys for Firefox. Does not include underlined menu accelerators
1680 and the like, as those are part of i18n.
1683 # TODO "and platform specific directories under it"
1685 group: dev-accessibility
1686 url: https://support.mozilla.org/kb/keyboard-shortcuts-perform-firefox-tasks-quickly
1688 - 'Core::Keyboard: Navigation'
1693 machine_name: core_global_key_bindings
1695 - name: 'Core: Graphics'
1696 description: Mozilla graphics API
1704 - Benoit Girard(Compositor, Performance)
1706 - George Wright(Canvas2D)
1710 - John Daggett(text/fonts)
1711 - Benoit Jacob(gfx/gl)
1713 - Vladimir Vukicevic
1714 - James Willcox(Android)
1717 url: https://wiki.mozilla.org/Platform/GFX https://wiki.mozilla.org/Gecko:Layers
1718 https://wiki.mozilla.org/Gecko:2DGraphicsSketch
1721 - 'Core::Graphics: Layers'
1722 - 'Core::Graphics: Text'
1723 - 'Core::Graphics: WebRender'
1724 - 'Core::GFX: Color Management'
1725 - 'Core::Canvas: 2D'
1726 - 'Core::Canvas: WebGL'
1738 machine_name: core_graphics
1741 description: Hardware Abstraction Layer
1747 - Core::Hardware Abstraction Layer (HAL)
1751 machine_name: core_hal
1753 - name: 'Core: HTML Parser'
1754 description: The HTML Parser transforms HTML source code into a DOM. It conforms
1755 to the HTML specification, and is mostly translated automatically from Java
1761 url: http://about.validator.nu/
1763 - 'Core::HTML: Parser'
1768 machine_name: core_html_parser
1770 - name: 'Core: I18N Library'
1779 url: :ref:`Internationalization`
1781 - Core::Internationalization
1789 machine_name: core_i18n_library
1791 - name: 'Core: ImageLib'
1794 - media/libjpeg/**/*
1811 machine_name: core_imagelib
1813 - name: 'Core: IndexedDB'
1816 - dom/indexedDB/**/*
1824 url: https://developer.mozilla.org/en/IndexedDB
1826 - 'Core::DOM: IndexedDB'
1827 review_group: dom-storage-reviewers
1834 machine_name: core_indexeddb
1837 description: Native message-passing between threads and processes
1858 review_group: ipc-reviewers
1865 machine_name: core_ipc
1867 - name: 'Core: JavaScript'
1868 description: JavaScript engine (SpiderMonkey)
1892 - Nicholas Nethercote
1897 url: https://spidermonkey.dev/
1899 - Core::JavaScript Engine
1900 - 'Core::JavaScript: GC'
1901 - 'Core::JavaScript: Internationalization API'
1902 - 'Core::JavaScript: Standard Library'
1903 - 'Core::JavaScript: WebAssembly'
1925 machine_name: core_javascript
1927 - name: 'Core: JavaScript JIT'
1928 description: JavaScript engine's JIT compilers (IonMonkey, Baseline)
1936 url: https://spidermonkey.dev/
1938 - 'Core::JavaScript Engine: JIT'
1954 machine_name: core_javascript_jit
1956 - name: 'Core: js-tests'
1957 description: JavaScript test suite
1961 group: dev-tech-js-engine
1962 url: http://www.mozilla.org/js/tests/library.html
1966 machine_name: core_jstests
1968 - name: 'Core: Layout Engine'
1969 description: rendering tree construction, layout (reflow), etc.
1975 - layout/generic/**/*
1976 - layout/printing/**/*
1977 - layout/tables/**/*
1986 url: https://wiki.mozilla.org/Gecko:Overview#Layout
1989 - 'Core::Layout: Block and Inline'
1990 - 'Core::Layout: Columns'
1991 - 'Core::Layout: Flexbox'
1992 - 'Core::Layout: Floats'
1993 - 'Core::Layout: Form Controls'
1994 - 'Core::Layout: Generated Content, Lists, and Counters'
1995 - 'Core::Layout: Grid'
1996 - 'Core::Layout: Images, Video, and HTML Frames'
1997 - 'Core::Layout: Positioned'
1998 - 'Core::Layout: Ruby'
1999 - 'Core::Layout: Scrolling and Overflow'
2000 - 'Core::Layout: Tables'
2001 - 'Core::Layout: Text and Fonts'
2002 - Core::Print Preview
2003 - 'Core::Printing: Output'
2015 machine_name: core_layout_engine
2017 - name: 'Core: Legacy HTML Parser'
2020 - parser/htmlparser/**/*
2024 url: http://www.mozilla.org/newlayout/doc/parser.html
2026 - 'Core::HTML: Parser'
2033 machine_name: core_legacy_html_parser
2035 - name: 'Core: libjar'
2036 description: The JAR handling code (protocol handler, stream implementation, and
2037 zipreader/zipwriter).
2039 - modules/libjar/**/*
2049 - 'Core::Networking: JAR'
2055 machine_name: core_libjar
2057 - name: 'Core: MathML'
2058 description: MathML is a low-level specification for describing mathematics which
2059 provides a foundation for the inclusion of mathematical expressions in Web pages.
2061 - layout/mathml/**/*
2063 group: dev-tech-mathml
2064 url: https://developer.mozilla.org/docs/Web/MathML
2071 machine_name: core_mathml
2073 - name: 'Core: Media Playback'
2074 description: HTML Media APIs, including Media Source Extensions and non-MSE video/audio
2075 element playback, and Encrypted Media Extensions. (WebRTC and WebAudio not included).
2078 - media/gmp-clearkey/**/*
2079 - media/libcubeb/**/*
2080 - media/libnestegg/**/*
2082 - media/libopus/**/*
2083 - media/libtheora/**/*
2084 - media/libtremor/**/*
2085 - media/libvorbis/**/*
2087 - dom/media/platforms/omx/**/*
2088 - dom/media/gmp/rlz/**/*
2103 machine_name: core_media_playback
2105 - name: 'Core: Media Transport'
2106 description: Pluggable transport for real-time media
2108 - dom/media/webrtc/transport/**/*
2112 - Core::WebRTC::Networking
2119 machine_name: core_media_transport
2121 - name: 'Core: Memory Allocator'
2122 description: Most things related to memory allocation in Gecko, including jemalloc,
2123 replace-malloc, DMD (dark matter detector), logalloc, etc.
2129 - Nicholas Nethercote
2137 machine_name: core_memory_allocator
2139 - name: 'Core: mfbt'
2140 description: mfbt is a collection of headers, macros, data structures, methods,
2141 and other functionality available for use and reuse throughout all Mozilla code
2142 (including SpiderMonkey and Gecko more broadly).
2154 machine_name: core_mfbt
2156 - name: 'Core: Moz2D (Graphics submodule)'
2157 description: Platform independent 2D graphics API
2162 url: https://wiki.mozilla.org/Platform/GFX/Moz2D
2170 machine_name: core_moz2d_graphics_submodule
2172 - name: 'Core: Mozglue'
2173 description: Glue library containing various low-level functionality, including
2174 a dynamic linker for Android, a DLL block list for Windows, etc.
2182 - Kartikaya Gupta (mozglue/android)
2187 machine_name: core_mozglue
2189 - name: 'Core: MSCOM'
2190 description: Integration with Microsoft Distributed COM
2201 - 'Core::IPC: MSCOM'
2207 machine_name: core_mscom
2209 - name: 'Core: Necko'
2210 description: The Mozilla Networking Library
2214 - netwerk/build/**/*
2215 - netwerk/cache2/**/*
2217 - netwerk/locales/**/*
2219 - netwerk/protocol/**/*
2220 - netwerk/socket/**/*
2221 - netwerk/streamconv/**/*
2222 - netwerk/system/**/*
2227 - dom/websocket/**/*
2228 - uriloader/prefetch/**/*
2229 - uriloader/preload/**/*
2232 - Dragana Damjanovic
2234 - Christian Biesinger
2245 group: dev-tech-network
2246 url: :ref:`Networking`
2249 - 'Core::Networking: Cache'
2250 - 'Core::Networking: Cookies'
2251 - 'Core::Networking: FTP'
2252 - 'Core::Networking: File'
2253 - 'Core::Networking: HTTP'
2254 - 'Core::Networking: JAR'
2255 - 'Core::Networking: Websockets'
2256 - 'Core::DOM: Networking'
2262 machine_name: core_necko
2264 - name: 'Core: NodeJS usage, tools, and style'
2265 description: Advises on the use of NodeJS and npm packages at build and runtime.
2266 Reviews additions/upgrades/removals of vendored npm packages. Works with appropriate
2267 teams to maintain automated license and security audits of npm packages. Works
2268 with the security team and relevant developers to respond to vulnerabilities
2269 in NodeJS and vendored npm packages.
2274 # TODO: and others as appropriate
2278 url: 'https://wiki.mozilla.org/Firefox/firefox-dev, #nodejs on slack'
2287 machine_name: core_nodejs_usage_tools_and_style
2289 - name: 'Core: NSPR'
2290 description: Netscape Portable Runtime
2296 group: dev-tech-nspr
2304 machine_name: core_nspr
2307 description: Rendering code to display documents encoded in the ISO 32000-1 PDF
2310 - toolkit/components/pdfjs/**/*
2318 url: https://github.com/mozilla/pdf.js
2325 machine_name: core_pdf
2327 - name: 'Core: Permissions'
2330 - extensions/permissions/**/*
2339 - Christian Biesinger
2344 - 'Core :: Permission Manager'
2351 machine_name: core_permissions
2353 - name: 'Core: Plugins'
2354 description: ' NPAPI Plugin support.'
2366 url: https://wiki.mozilla.org/Plugins
2371 machine_name: core_plugins
2373 - name: 'Core: Preferences'
2374 description: Preference library
2376 - modules/libpref/**/*
2379 - Nicholas Nethercote
2385 - 'Core::Preferences: Backend'
2391 machine_name: core_preferences
2393 - name: 'Core: Private Browsing'
2394 description: Implementation of the Private Browsing mode, and the integration
2395 of other modules with Private Browsing APIs.
2398 # Implementation and consumers of Private Browsing APIs in nsILoadContext,
2399 # nsIPrivateBrowsingChannel, PrivateBrowsingUtils.sys.mjs and the related glue code.'
2407 url: https://wiki.mozilla.org/Private_Browsing
2409 - Firefox::Private Browsing
2414 machine_name: core_private_browsing
2416 - name: 'Core: Privilege Manager'
2417 description: Caps is the capabilities-based security system.
2426 url: http://www.mozilla.org/projects/security/components/index.html
2428 - 'Core::Security: CAPS'
2434 machine_name: core_privilege_manager
2436 - name: 'Core: Push Notifications'
2437 description: Push is a way for application developers to send messages to their
2448 - 'Core::DOM: Notifications'
2452 machine_name: core_push_notifications
2454 - name: 'Core: Sandboxing (Linux)'
2455 description: Sandboxing for the Linux platform
2457 - security/sandbox/linux/**/*
2460 url: https://wiki.mozilla.org/Security/Sandbox
2462 - 'Core::Security: Process Sandboxing'
2467 machine_name: core_sandboxing_linux
2469 - name: 'Core: Sandboxing (OSX)'
2470 description: Sandboxing for the OSX platform
2472 - security/sandbox/mac/**/*
2475 url: https://wiki.mozilla.org/Security/Sandbox
2477 - 'Core::Security: Process Sandboxing'
2481 machine_name: core_sandboxing_osx
2483 - name: 'Core: Sandboxing (Windows)'
2484 description: Sandboxing for the Windows platform
2486 - security/sandbox/win/**/*
2496 url: https://wiki.mozilla.org/Security/Sandbox
2498 - 'Core::Security: Process Sandboxing'
2503 machine_name: core_sandboxing_windows
2505 - name: 'Core: security'
2506 description: Crypto/PKI code, including NSS (Network Security Services) and JSS
2519 group: dev-tech-crypto
2520 url: :ref:`Network Security Services (NSS)`
2525 - 'Core::Security: S/MIME'
2538 machine_name: core_security
2540 - name: 'Core: Security - Mozilla PSM Glue'
2541 description: Personal Security Manager
2543 - security/manager/**/*
2546 - Kai Engert (2001-2012)
2547 group: dev-tech-crypto
2549 - 'Core::Security: PSM'
2558 machine_name: core_security_mozilla_psm_glue
2560 - machine_name: core_security_rlbox
2561 name: Security - RLBox
2562 description: Sandboxing using WASM/RLBox libraries.
2566 - third_party/rlbox_wasm2c_sandbox
2576 - 'Core::Security: RLBox'
2577 - name: 'Core: Static analysis & rewriting for C++'
2578 description: Tools for checking C++ code looking for problems at compile time,
2579 plus tools for automated rewriting of C++ code.
2581 - build/clang-plugin/**/*
2582 - tools/rewriting/**/*
2583 # TODO among other out of tree tools
2586 - Birunthan Mohanathas
2590 - Core::Rewriting & Analysis
2597 machine_name: core_static_analysis_rewriting_for_c
2599 - name: 'Core: storage'
2600 description: Storage APIs with a SQLite backend
2602 - third_party/sqlite3/**/*
2606 url: http://developer.mozilla.org/en/docs/Storage
2608 - Toolkit::Storage, Core::SQL
2616 machine_name: core_storage
2618 - name: 'Core: String'
2623 group: dev-tech-xpcom
2624 url: :ref:`String Guide`
2631 machine_name: core_string
2633 - name: 'Core: Style System'
2634 description: CSS style sheet handling; style data computation
2645 url: https://wiki.mozilla.org/Gecko:Overview#Style_System
2647 - Core::CSS Parsing and Computation
2648 - 'Core::DOM: CSS Object Model'
2654 machine_name: core_style_system
2657 description: Scalable Vector Graphics
2664 url: https://developer.mozilla.org/docs/Web/SVG
2674 machine_name: core_svg
2676 - name: 'Core: UA String'
2677 description: User Agent String
2679 - netwerk/protocol/http/**/*
2682 url: https://developer.mozilla.org/docs/Web/HTTP/Headers/User-Agent/Firefox
2684 - 'Core::Networking: HTTP'
2690 machine_name: core_ua_string
2692 - name: 'Core: View System'
2693 description: The View Manager is responsible for handling "heavyweight" rendering
2694 (some clipping, compositing) and event handling tasks.
2702 - 'Core::Layout: View Rendering'
2708 machine_name: core_view_system
2710 - name: 'Core: Web Audio'
2711 description: Support for the W3C Web Audio API specification.
2713 - dom/media/webaudio/**/*
2718 url: https://wiki.mozilla.org/Web_Audio_API
2726 machine_name: core_web_audio
2728 - name: 'Core: Web Painting'
2729 description: painting, display lists, and layer construction
2731 - layout/painting/**/*
2732 # TODO: "the display list and layer related methods on nsIFrame and its subclasses"
2735 url: :ref:`Layout & CSS`
2737 - 'Core::Layout: Web Painting'
2748 machine_name: core_web_painting
2750 - name: 'Core: Web Workers'
2763 url: https://developer.mozilla.org/docs/Web/API/Web_Workers_API/Using_web_workers
2765 - 'Core::DOM: Workers'
2766 review_group: dom-worker-reviewers
2772 machine_name: core_web_workers
2774 - name: 'Core: WebGPU (Graphics submodule)'
2775 description: WebGPU implementation
2778 - gfx/wgpu_bindings/**/*
2779 - third_party/rust/naga/**/*
2780 - third_party/rust/wgpu-core/**/*
2781 - third_party/rust/wgpu-hal/**/*
2782 - third_party/rust/wgpu-types/**/*
2785 url: https://wiki.mozilla.org/Platform/GFX/WebGPU
2787 - Core::Graphics::WebGPU
2788 review_group: webgpu-reviewers
2800 machine_name: core_webgpu_graphics_submodule
2802 - name: 'Core: WebRTC'
2803 description: WebRTC is responsible for realtime audio and video communication,
2804 as well as related issues like low-level camera and microphone access
2807 # TODO: also see submodules "WebRTC Media" and "WebRTC Signaling"
2812 url: https://wiki.mozilla.org/Media/webrtc
2815 - Core::WebRTC Networking
2822 machine_name: core_webrtc
2824 - name: 'Core: WebVR'
2825 description: Gecko's implementation of WebVR (Virtual Reality) functionality,
2826 including API, devices, graphics and integration
2832 - Vladimir Vukicevic
2835 url: https://mozvr.com/
2844 - name: 'Core: WebRTC Media'
2845 description: Submodule of WebRTC responsible for access to media input devices
2846 (microphones, cameras, screen capture), as well as realtime audiovisual
2847 codecs and packetization.
2850 - dom/media/webrtc/**/*
2851 - dom/media/systemservices/**/*
2857 url: https://wiki.mozilla.org/Media/webrtc
2859 - Core::WebRTC (Audio/Video)
2866 machine_name: core_webrtc_media
2868 - name: 'Core: WebRTC Signaling'
2869 description: Submodule of WebRTC responsible for implementation of PeerConnection
2870 API, WebRTC identity, and SDP/JSEP handling
2872 - media/webrtc/signaling/**/*
2877 url: https://wiki.mozilla.org/Media/webrtc
2879 - Core::WebRTC (Signaling)
2887 machine_name: core_webrtc_signaling
2888 machine_name: core_webvr
2890 - name: 'Core: Widget'
2891 description: Top level Widget
2896 - Vladimir Vukicevic
2903 - Core::Drag and Drop
2905 - 'Core::Printing: Setup'
2908 machine_name: core_widget
2910 - name: 'Core: Widget - Android'
2911 description: This is part of the [https://wiki.mozilla.org/Modules/Core#GeckoView
2916 machine_name: core_widget_android
2918 - name: 'Core: Widget - GTK'
2919 description: GTK widget support
2926 url: http://www.mozilla.org/ports/gtk/
2928 - 'Core::Widget: Gtk'
2933 machine_name: core_widget_gtk
2935 - name: 'Core: Widget - Headless'
2936 description: Headless widget support
2938 - widget/headless/**/*
2947 machine_name: core_widget_headless
2949 - name: 'Core: Widget - macOS'
2950 description: ' macOS widget support'
2963 - 'Core::Widget: Cocoa'
2969 machine_name: core_widget_macos
2971 - name: 'Core: Widget - Windows'
2972 description: Windows widget support
2974 - widget/windows/**/*
2980 - Vladimir Vukicevic
2983 - Christian Biesinger
2985 - Josh 'timeless' Soref
2992 - 'Core::Widget: Win32'
2998 machine_name: core_widget_windows
3001 description: XML in Mozilla, including XML, XHTML, Namespaces in XML, Associating
3002 Style Sheets with XML Documents, XML Linking and XML Extras. XML-related things
3003 that are not covered by more specific projects.
3019 machine_name: core_xml
3021 - name: 'Core: XPApps'
3022 description: Cross-Platform Applications, mostly Navigator front end and application
3027 group: dev-apps-seamonkey
3031 - Josh 'timeless' Soref
3034 machine_name: core_xpapps
3036 - name: 'Core: XPCOM'
3037 description: The cross-platform object model and core data structures.
3043 - xpcom/components/**/*
3047 - xpcom/reflect/**/*
3051 - xpcom/threads/**/*
3052 - xpcom/windbgdlg/**/*
3064 review_group: xpcom-reviewers
3074 machine_name: core_xpcom
3076 - name: 'Core: XPConnect'
3077 description: Deep Magic
3096 machine_name: core_xpconnect
3098 - name: 'Core: XPIDL'
3099 description: Cross-platform IDL compiler; produces .h C++ header files and .xpt
3100 runtime type description files from .idl interface description files.
3102 - xpcom/idl-parser/**/*
3109 - Josh 'timeless' Soref
3110 group: dev-tech-xpcom
3116 machine_name: core_xpidl
3118 - name: 'Core: XSLT Processor'
3119 description: XSLT transformations processor
3127 group: dev-tech-xslt
3128 url: https://developer.mozilla.org/docs/Web/XSLT
3134 machine_name: core_xslt_processor
3136 - name: Desktop Firefox
3137 description: Standalone Web Browser.
3150 - Tim Guan-tin Chien
3180 - name: Add-ons Manager
3181 description: Extension management back-end.
3183 - toolkit/mozapps/extensions/**/*
3197 machine_name: addons_manager
3199 - name: Add-ons Manager UI
3200 description: about:addons.
3202 - toolkit/mozapps/extensions/content/**/*
3215 machine_name: addons_manager_ui
3217 - name: Application Update
3218 description: The application update services.
3220 - toolkit/mozapps/update/**/*
3227 machine_name: application_update
3229 - name: Bookmarks & History
3230 description: The bookmarks and history services (Places).
3232 - browser/components/places/**/*
3233 - toolkit/components/places/**/*
3242 - Firefox::Bookmarks & History
3244 review_group: places-reviewers
3252 machine_name: bookmarks_history
3254 - name: Desktop Theme
3255 description: The style rules used in the desktop UI.
3257 - browser/themes/**/*
3258 - toolkit/themes/**/*
3273 machine_name: desktop_theme
3276 description: The main browser UI except where covered by more specific submodules.
3278 - browser/base/content/**/*
3285 machine_name: desktop_ui
3287 - name: Download Manager
3288 description: The downloads UI and service.
3290 - browser/components/downloads/**/*
3291 - toolkit/mozapps/downloads/**/*
3292 - uriloader/exthandler/**/*
3302 machine_name: download_manager
3304 - name: Enterprise Policies
3305 description: System policies for controlling Firefox.
3307 - browser/components/enterprisepolicies/**/*
3312 machine_name: enterprise_policies
3314 - name: Experiments/Rollouts
3315 description: Desktop clients for our experiments and off-train deployments
3318 - toolkit/components/normandy/**/*
3319 - toolkit/components/nimbus/**/*
3325 - Firefox::Nimbus Desktop Client
3326 url: https://experimenter.info/
3332 machine_name: normandy
3334 - machine_name: firefox_view
3336 description: The Firefox View page and its modules.
3338 - browser/components/firefoxview/**/*
3346 - name: Form Autofill
3347 description: Form detection and autocomplete.
3349 - browser/extensions/formautofill/**/*
3350 - toolkit/components/satchel/**/*
3353 - Matthew Noorenberghe
3359 machine_name: form_autofill
3361 - name: In-product Messaging
3362 description: The system for delivering in-product messaging.
3364 - toolkit/components/messaging-system/**/*
3367 - Firefox::Messaging System
3374 machine_name: inproduct_messaging
3376 - name: Launcher Process
3377 description: Windows process for bootstrapping the browser process.
3379 - browser/app/winlauncher/**/*
3385 - Firefox::Launcher Process
3392 machine_name: launcher_process
3394 - machine_name: localization
3396 description: Tooling to enable translation and facilitate localization.
3404 - name: New Tab Page
3405 description: The new tab/home page.
3407 - browser/components/newtab/**/*
3410 - Firefox::New Tab Page
3417 machine_name: new_tab_page
3420 description: The onboarding experience including UI tours.
3422 - browser/components/uitour/**/*
3430 machine_name: onboarding
3432 - name: Password Manager
3433 description: Managing, saving and filling logins.
3435 - toolkit/components/passwordmgr/**/*
3436 - browser/components/aboutlogins/**/*
3439 - Matthew Noorenberghe
3443 url: https://wiki.mozilla.org/Toolkit:Password_Manager
3445 - Toolkit::Password Manager
3446 - 'Toolkit::Password Manager: Site'
3448 - Firefox::about:logins
3456 machine_name: password_manager
3458 - machine_name: firefox_pip
3459 name: Picture-in-Picture
3460 description: A component that allows video elements to be pulled out into
3461 an always-on-top window.
3463 - toolkit/components/pictureinpicture
3464 - browser/extensions/pictureinpicture
3474 - name: Profile Migration
3475 description: Migrating data from other browsers.
3477 - browser/components/migration/**/*
3485 machine_name: profile_migration
3488 description: Code relating to Screenshots functionality
3490 - browser/extensions/screenshots/**/*
3491 - browser/components/screenshots/**/*
3499 - Firefox::Screenshots
3505 machine_name: screenshots
3507 - name: Search and Address Bar
3508 description: The search service, address bar and address bar autocomplete.
3510 - browser/components/search/**/*
3511 - browser/components/urlbar/**/*
3512 - toolkit/components/search/**/*
3515 - Firefox::Address Bar
3528 machine_name: search_and_address_bar
3530 - name: Security and Privacy UI
3531 description: The front-end to our security and privacy features, including
3532 Protections UI, Site Identity, Site Permissions and Certificate Errors
3534 - browser/components/protections/**/*
3535 - browser/components/controlcenter/**/*
3539 - Nihanth Subramanya
3544 - Firefox::Protections UI
3545 - Firefox::Site Identity
3546 - Firefox::Site Permissions
3551 machine_name: security_and_privacy_ui
3553 - name: Session Restore
3554 description: Restoring a user's session after starting Firefox.
3556 - browser/components/sessionstore/**/*
3557 - toolkit/components/sessionstore/**/*
3566 - Firefox::Session Restore
3573 machine_name: session_restore
3576 description: The front-end settings user interface.
3578 - browser/components/preferences/**/*
3579 - browser/themes/*/preferences
3580 - toolkit/mozapps/preferences
3591 machine_name: settings_ui
3593 - name: Tabbed Browser
3594 description: The UI component controlling browser tabs.
3596 - browser/base/content/tabbrowser*
3597 - browser/base/content/browser-allTabsMenu.js
3598 - browser/base/content/browser-ctrlTab.js
3599 - browser/base/content/browser-fullZoom.js
3600 - browser/modules/AsyncTabSwitcher.sys.mjs
3601 - browser/modules/NewTabPagePreloading.sys.mjs
3602 - browser/modules/OpenInTabsUtils.sys.mjs
3603 - browser/modules/TabsList.sys.mjs
3604 - browser/modules/TabUnloader.sys.mjs
3607 - Firefox::Tabbed Browser
3616 machine_name: tabbed_browser
3618 - name: Windows Installer
3619 description: The installer for Windows.
3621 - browser/installer/**/*
3622 - toolkit/mozapps/installer/**/*
3625 - Firefox::Installer
3631 machine_name: windows_installer
3632 machine_name: desktop_firefox
3634 - machine_name: devtools
3636 description: Mozilla Developer Tools
3662 - Steve Fink (heapsnapshot code)
3672 - Panagiotis Astithas
3690 url: http://firefox-dev.tools/
3693 - machine_name: javascript_usage
3694 name: JavaScript usage, tools, and style
3695 description: Aspects of JavaScript use such as language feature usage, tooling
3696 such as lint configurations, formatting and naming style.
3698 - .eslintrc-test-paths.js
3699 - '**/.eslintignore'
3701 - tools/lint/eslint/**/*
3718 - machine_name: mozharness
3720 description: Configuration-driven script harness.
3722 - testing/mozharness/**/*
3735 - 'Release Engineering :: Applications: MozharnessCore'
3736 - machine_name: python_usage
3737 name: Python usage, tools, and style
3738 description: Aspects of Python use such as tooling, formatting and naming style
3740 - tools/lint/python/**/*
3750 - 'Developer Infrastructure :: Lint and Formatting'
3752 - machine_name: remote_protocol
3753 name: Remote Protocol
3754 description: Low-level remote protocol exposing interfaces for inspecting state
3755 and controlling execution of web documents, instrumenting various subsystems
3756 in the browser, simulating user interaction for automation purposes, and for
3757 subscribing to updates from the aforementioned.
3763 url: https://firefox-source-docs.mozilla.org/remote/
3772 - machine_name: remote_protocol_agent
3774 description: Underlying transport layer and server to allow remoting of Firefox
3775 for automation and debugging.
3780 - remote/marionette/*
3781 - remote/webdriver-bidi/*
3786 - Maja Frydrychowicz
3790 - 'Remote Protocol :: Agent'
3798 - machine_name: remote_protocol_cdp
3800 description: The core implementation for CDP support. Please file domain specific
3801 issues and requests under the appropriate CDP-prefixed Remote Protocol component.
3808 - Maja Frydrychowicz
3812 - 'Remote Protocol :: CDP'
3820 - machine_name: remote_protocol_marionette
3822 description: Marionette is a remote protocol that lets out-of-process programs
3823 communicate with, instrument, and control Gecko-based browsers. Combined
3824 with geckodriver, this forms our WebDriver classic implementation.
3826 - remote/marionette/*
3831 - Maja Frydrychowicz
3834 - 'Remote Protocol :: Marionette'
3835 group: dev-webdriver
3843 - machine_name: remote_protocol_webdriver_bidi
3844 name: WebDriver BiDi
3845 description: W3C WebDriver BiDi implementation for Gecko-based browsers.
3847 - remote/webdriver-bidi/*
3850 - 'Remote Protocol :: WebDriver BiDi'
3851 group: dev-webdriver
3859 - machine_name: sync
3861 description: Firefox Sync client
3863 - services/sync/**/*
3876 url: https://wiki.mozilla.org/Services/Process/Code_Review
3880 - machine_name: testing_firefox_ui
3882 description: Firefox UI test framework.
3884 - testing/firefox-ui/**/*
3887 - Maja Frydrychowicz
3889 - 'Testing :: Firefox UI'
3897 - machine_name: testing_geckodriver
3899 description: Proxy for using W3C WebDriver-compatible clients to interact with
3900 Gecko-based browsers.
3902 - testing/geckodriver/**/*
3910 - 'Testing :: geckodriver'
3911 group: dev-webdriver
3913 - machine_name: testing_gtest
3915 description: GTest test harness.
3917 - testing/gtest/**/*
3924 - 'Testing :: GTest'
3926 - machine_name: testing_marionette_client_harness
3927 name: Marionette Client & Harness
3928 description: Python client and harness for the Marionette remote protocol implementation.
3930 - testing/marionette/**/*
3935 - Maja Frydrychowicz
3938 - 'Testing :: Marionette Client & Harness'
3946 - machine_name: testing_mochitest
3948 description: Mochitest test framework
3950 - testing/mochitest/**/*
3959 - 'Testing :: Mochitest'
3960 - machine_name: testing_mozbase
3962 description: Base modules used for implementing test components.
3976 - 'Testing :: Mozbase'
3977 - 'Testing :: Mozbase Rust'
3978 - machine_name: testing_performance_testing
3979 name: Performance Testing
3981 This module encompasses all of our performance testing projects, e.g. Raptor, Talos,
3982 MozPerfTest, AWSY, JSShell, mach try perf, etc.. See our PerfDocs for more information on
3983 the owners/peers of the various components (linked below).
3985 - testing/raptor/**/*
3986 - testing/talos/**/*
3987 - python/mozperftest/**/*
3989 - testing/jsshell/**/*
3990 - tools/lint/perfdocs/**/*
3991 - testing/perfdocs/**/*
3992 - testing/performance/**/*
3993 - testing/condprofile/**/*
3994 - tools/browsertime/**/*
3995 - tools/tryselect/selectors/perf.py
4005 - 'Testing :: Raptor'
4006 - 'Testing :: Talos'
4008 - 'Testing :: Performance'
4009 - 'Testing :: mozperftest'
4010 - 'Testing :: Condprofile'
4011 url: :ref:`Performance Testing`
4012 - machine_name: testing_reftest
4013 name: Reftest (+ jsreftest + crashtest)
4014 description: Reftest test framework
4016 - layout/tools/reftest/**/*
4025 - 'Testing :: Reftest'
4026 - machine_name: testing_tryselect
4028 description: Frontend for selecting jobs on the try server.
4030 - tools/tryselect/**/*
4039 - 'Developer Infrastructure :: Try'
4040 - machine_name: testing_web_platform_tests_infrastructure
4041 name: web-platform-tests infrastructure
4042 description: Infrastructure for running the cross-browser web-platform-tests
4044 - testing/web-platform/**/*
4045 - testing/web-platform/tests/tools/**/*
4047 - testing/web-platform/tests/**/*
4048 - testing/web-platform/meta/**/*
4049 - testing/web-platform/mozilla/**/*
4055 - 'Testing :: web-platform-tests'
4056 - machine_name: testing_xpcshell
4058 description: XPCShell test harness.
4060 - testing/xpcshell/**/*
4068 - Testing::XPCShell Harness
4070 description: Components shared between desktop and mobile browsers.
4087 - name: Application Startup
4088 description: The profile system and startup process before the front-end launches.
4090 - toolkit/profile/**/*
4091 - toolkit/components/remote/**/*
4098 machine_name: application_startup
4102 The core infrastructure in the Firefox client to send back telemetry
4103 data. Includes the common mechanisms to record, view and submit data: Legacy
4104 Telemetry and Glean (via Firefox on Glean (FOG)). This module
4105 does ''not'' include responsibility for every piece of submitted Telemetry
4106 data. Each team/module is responsible for their own measurements (histograms,
4107 scalars, other ping submissions, etc.).
4109 - toolkit/components/glean/**/*
4110 - toolkit/components/telemetry/**/*
4111 - toolkit/content/aboutTelemetry.*
4116 url: :ref:`Telemetry`
4124 machine_name: telemetry
4127 description: The base widgets used throughout the UI.
4129 - toolkit/content/widgets/**/*
4141 machine_name: ui_widgets
4143 - name: Webextensions
4144 description: Webextension APIs and integration.
4146 - browser/components/extensions/**/*
4147 - toolkit/components/extensions/**/*
4159 machine_name: webextensions
4160 machine_name: toolkit
4161 - machine_name: url_classifier
4162 name: URL Classifier
4163 description: Database and list-based classification of URL resources, such as
4164 Tracking Protection and SafeBrowsing.
4166 - toolkit/components/url-classifier/**/*
4167 - netwerk/url-classifier/**/*
4176 url: https://github.com/mozilla-services/shavar https://wiki.mozilla.org/Phishing_Protection
4177 https://wiki.mozilla.org/Security/Tracking_protection https://wiki.mozilla.org/Security/Application_Reputation
4185 config: f2394b6182e6748b4f054670caf4e4b35a112e1c
4186 export: 3453aad6babd5a5d451fb588d5321161e22cfa58