Read-only Git mirror of the Mercurial gecko repositories at https://hg.mozilla.org. How to contribute: https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html
Go to file
Andi-Bogdan Postelnicu 4cf7602483 Bug 1799640 - unused include files checker in clang-tidy. r=glandium,sergesanspaille
Ported from clangd, this still can be improved over time, but it can be landed.
This was based on the work from https://bit.ly/3TkV2N1

  * The utility makes the assumption that all header are self contained!
  * It only checkes `Decls` from the main translation file, where SourceLocarion is the
    passed `cpp` file.
  * It builds a list with all of the includes from the translation unit.
  * It matches all of the `Decls` from the main translation units with definitions from the
    included header files and builds a list with used header files.
  * All of the includes that are not part of the matched used header files are considered
    to be unused. Of course this is correct if the first assumption if followed by the coding guide,
    where all of the header are self contained. Since the mozilla code base doesn't follow this approach
    false positives might appear where the is the following situation:
FOO.cpp
  #include <A>
  #Include <B>

If header `A` defines a symbol that is used by header `B` and `B` doesn't include `A` nor
it has symbols defined that are used by `FOO.cpp` then `B` it will be marked as potentially to be removed
by the tool.
This is the limitation determined by header that are not self contained.

The limitation presented above can be fixed in the future with extra work, but it's very time expensive
during the runtime of the checker.

Differential Revision: https://phabricator.services.mozilla.com/D161583
2022-11-24 16:15:51 +00:00
.cargo Bug 1799402 - Vendor wpf-gpu-raster Rust crate. r=jrmuizel,supply-chain-reviewers 2022-11-12 08:06:43 +00:00
.vscode
accessible Bug 1790816 - Reformat accessible/ with isort. r=linter-reviewers,Standard8 DONTBUILD 2022-11-23 12:38:45 +00:00
browser Backed out changeset 4a504fa8d156 (bug 1802207) for causing bc failures CLOSED TREE 2022-11-24 10:46:53 -05:00
build Bug 1799640 - unused include files checker in clang-tidy. r=glandium,sergesanspaille 2022-11-24 16:15:51 +00:00
caps Backed out changeset 02a9e51358f1 (bug 1792138) for causing mochitests failures on browser_ext_windows_create_url.js. CLOSED TREE 2022-11-17 18:38:00 +02:00
chrome Bug 1799314 - Convert consumers of testing modules to import ES modules direct (miscellaneous). r=mossop 2022-11-17 12:00:32 +00:00
config Bug 1790816 - Reformat config/ with isort. r=linter-reviewers,ahal DONTBUILD 2022-11-23 22:04:39 +00:00
devtools Bug 1801621 - [devtools] Document source map requests module. r=bomsy 2022-11-24 14:57:49 +00:00
docs Bug 1802174 - Add Kagami Rosylight as a DOM peer. r=mccr8,zeid DONTBUILD 2022-11-24 10:02:17 +00:00
docshell Bug 1793834 - part 1/12: adding a mostly-empty about:windows-messages page r=Gijs,fluent-reviewers,flod 2022-11-22 03:44:51 +00:00
dom Backed out changeset 6ff09962db9e (bug 1792655) for causing mochitest failures in test_bug1123516_maplikesetlike.html CLOSED TREE 2022-11-24 10:27:15 -05:00
editor Bug 1799314 - Convert consumers of testing modules to import ES modules direct (miscellaneous). r=mossop 2022-11-17 12:00:32 +00:00
extensions Bug 1800927: Fix the Updatebot linter and offending moz.yaml files r=ahal,webdriver-reviewers 2022-11-21 19:35:16 +00:00
gfx Bug 1801512 - Respect the Control Panel FontSmoothingGamma value, if present. r=lsalzman 2022-11-24 15:10:43 +00:00
gradle/wrapper Bug 1786164 - Update gradle and plugin to the latest versions. r=geckoview-reviewers,jonalmeida 2022-08-31 22:10:38 +00:00
hal Bug 1744687 - Part 1. Lock orientation backend for Windows Tablet. r=gsvelto 2022-11-24 15:10:15 +00:00
image Bug 1800979 - Mark CSS image value loads as not cancelable. r=tnikkel 2022-11-20 00:22:20 +00:00
intl Bug 1792775 - Part 11.1: Update expected test results in non-SpiderMonkey files. r=platform-i18n-reviewers,gregtatum 2022-11-23 17:56:18 +00:00
ipc Bug 1800033 - mozavcodec and mozavutil should be ifdef MOZ_FFPVX. r=gerard-majax 2022-11-24 09:18:55 +00:00
js Bug 1802172 - Refactor CyclicModuleFields to provide getters and setters for some fields r=arai 2022-11-24 15:47:55 +00:00
layout Bug 1801521 - Reftest to check that subregion flag does not just render as black flag. r=m_kato 2022-11-24 10:23:54 +00:00
media Bug 1776141 - P4 - apply patches to vendored libyuv;r=mjf 2022-11-24 04:34:09 +00:00
memory Bug 1790816 - Reformat memory/ with isort. r=linter-reviewers,ahal DONTBUILD 2022-11-24 15:10:26 +00:00
mfbt Bug 1800293 - mfbt: Don't use std::is_literal_type when compiling as C++20. r=glandium 2022-11-16 00:54:27 +00:00
mobile Bug 1754499 - Add pdf.js in GeckoView r=geckoview-reviewers,pdfjs-reviewers,marco,m_kato 2022-11-24 13:36:17 +00:00
modules Bug 1802204 - Add feature for DAP telemetry - r=barret 2022-11-24 08:39:21 +00:00
mozglue Bug 1790816 - Reformat mozglue/ with isort. r=linter-reviewers,Standard8 DONTBUILD 2022-11-23 13:01:33 +00:00
netwerk No Bug, mozilla-central repo-update HSTS HPKP remote-settings tld-suffixes - a=repo-update r=dmeehan 2022-11-24 14:36:58 +00:00
nsprpub Bug 1788009 - NSPR_4_35_RTM, version number only, no code change. r=glandium UPGRADE_NSPR_RELEASE 2022-09-13 06:26:48 +00:00
other-licenses Bug 1800048: Don't expose the LINKS_TO relation via ATK and IA2. r=morgan 2022-11-15 06:46:24 +00:00
parser Bug 1709012 - Remove NS_ASSERTION about executor queue being empty upon destruction. r=edgar 2022-11-22 12:30:04 +00:00
python Bug 1743651 - Avoid failing to get the download size when a redirect is involved. r=firefox-build-system-reviewers,sergesanspaille 2022-11-24 07:23:28 +00:00
remote Bug 1790816 - Reformat remote/ with isort. r=webdriver-reviewers,whimboo DONTBUILD 2022-11-22 10:59:05 +00:00
security No Bug, mozilla-central repo-update HSTS HPKP remote-settings tld-suffixes - a=repo-update r=dmeehan 2022-11-24 14:36:58 +00:00
services Bug 1802210 - Add cookie-banner-rules-list data in tree. r=leplatrem 2022-11-24 15:40:37 +00:00
servo Bug 1800969 - Alias -webkit-clip-path to clip-path for webcompat; r=emilio 2022-11-23 20:26:14 +00:00
startupcache Bug 1796085 - Part 1: Define MOZ_BACKGROUNDTASKS macro globally r=smaug,necko-reviewers,application-update-reviewers,nalexander,valentin 2022-10-19 12:04:08 +00:00
storage Bug 1799314 - Convert consumers of testing modules to import ES modules direct (miscellaneous). r=mossop 2022-11-17 12:00:32 +00:00
supply-chain Bug 1802191 — Pull in imported audits for unicode-bidi and unicode-normalization. r=nika,supply-chain-reviewers 2022-11-23 21:57:51 +00:00
taskcluster Backed out changeset cbbd3bc4d731 (bug 1801283) as requested by Standard8. CLOSED TREE 2022-11-24 03:51:42 -05:00
testing Backed out changeset 6ff09962db9e (bug 1792655) for causing mochitest failures in test_bug1123516_maplikesetlike.html CLOSED TREE 2022-11-24 10:27:15 -05:00
third_party Bug 1800927: Fix the Updatebot linter and offending moz.yaml files r=ahal,webdriver-reviewers 2022-11-21 19:35:16 +00:00
toolkit Bug 1754499 - Add pdf.js in GeckoView r=geckoview-reviewers,pdfjs-reviewers,marco,m_kato 2022-11-24 13:36:17 +00:00
tools Backed out changeset 01470df94a33 (bug 1799640) as requested by Andi CLOSED TREE 2022-11-24 10:43:24 -05:00
uriloader Bug 1754499 - Add pdf.js in GeckoView r=geckoview-reviewers,pdfjs-reviewers,marco,m_kato 2022-11-24 13:36:17 +00:00
view Bug 1800992 - Invalidate frame in nsView::WindowResized. r=tnikkel 2022-11-23 06:45:41 +00:00
widget Bug 1744687 - Part 1. Lock orientation backend for Windows Tablet. r=gsvelto 2022-11-24 15:10:15 +00:00
xpcom Backed out 4 changesets (bug 1768581, bug 1709184) for causing high frequency Xpcshell failures at test_bug1274685_unowned_list.js. CLOSED TREE 2022-11-23 22:09:33 +02:00
xpfe/appshell Bug 1801032 - Keep reading lowercase screenx/y when loading XUL window positions. r=smaug 2022-11-23 14:52:12 +00:00
.arcconfig
.babel-eslint.rc.js
.clang-format
.clang-format-ignore Bug 1764698 - Move LanguageDetector.jsm and related files to toolkit. r=robwu 2022-08-23 05:59:55 +00:00
.cron.yml Bug 1666491 - Add a eslint-build tester (tier 3) that depends on xpt artifacts. r=nalexander,releng-reviewers,gbrown 2022-11-17 10:57:41 +00:00
.eslintignore Bug 1794693 - [devtools] Convert source-map jest test into mochitests. r=bomsy 2022-11-08 16:01:01 +00:00
.eslintrc-test-paths.js Bug 1774300 - Implement VideoColorSpace r=padenot,jgilbert 2022-10-06 00:37:20 +00:00
.eslintrc.js Bug 1799314 - Convert most of the JSM modules in testing/ to ES modules. r=ahal 2022-11-17 12:00:25 +00:00
.flake8 Bug 1622677 - Make dom/bindings flake8 compliant. r=sylvestre 2022-10-31 17:45:33 +00:00
.git-blame-ignore-revs
.gitattributes
.gitignore Bug 1784022 - [refactor] Convert text-emphasis-position #defines to enum classes r=emilio 2022-09-27 07:38:08 +00:00
.hg-annotate-ignore-revs
.hg-format-source
.hgignore Backed out 2 changesets (bug 1801426, bug 1790483) for causing bc failures on browser_all_files_referenced.js. CLOSED TREE 2022-11-23 03:09:29 +02:00
.hgtags No bug - tagging 41c78f88417ab2629a8f39dd4f4cbb56e59bbf85 with FIREFOX_NIGHTLY_108_END a=release DONTBUILD CLOSED TREE 2022-11-14 15:13:16 +00:00
.isort.cfg Bug 1492495 - Add flake8-isort plugin to sort Python includes, with support for autofixing through isort. r=linter-reviewers,ahal 2022-11-03 13:50:46 +00:00
.lando.ini Bug 1801965: update .lando.ini file for new autoformatting implementation r=zeid DONTBUILD 2022-11-22 20:19:59 +00:00
.lldbinit
.mailmap
.prettierignore Bug 1782273 - Part 30: Enable prettier for selfhosted code. r=tcampbell,Standard8 2022-08-04 17:13:03 +00:00
.prettierrc
.taskcluster.yml Bug 1795994 - Migrate decision task over to GCP r=ahal,releng-reviewers,jcristau 2022-10-26 15:55:18 +00:00
.trackerignore
.yamllint
.ycm_extra_conf.py
aclocal.m4
AUTHORS
build.gradle Bug 1799442 - Update Glean to v51.8.2, rkv to 0.18 r=janerik,supply-chain-reviewers 2022-11-18 13:56:27 +00:00
Cargo.lock Bug 1801767 - Remove fs::remove_dir_all usage in remove_disk_cache() r=gfx-reviewers,bradwerth 2022-11-22 05:35:25 +00:00
Cargo.toml Bug 1789520 - rust implementation of nssckbi. r=keeler,supply-chain-reviewers 2022-10-31 17:09:43 +00:00
client.mk Bug 1802075 - Avoid calling "--stop-server" as a command on local build failure. r=firefox-build-system-reviewers,andi 2022-11-23 20:38:52 +00:00
client.py Bug 1790816 - Reformat client.py and configure.py with isort. r=linter-reviewers,sylvestre DONTBUILD 2022-11-24 13:09:01 +00:00
CLOBBER Bug 1792775 - Part 13: Updating ICU requires a clobber. r=platform-i18n-reviewers,dminor 2022-11-23 17:56:18 +00:00
configure Bug 1787977 - Include configure in the tree. r=firefox-build-system-reviewers,nalexander 2022-08-30 04:02:12 +00:00
configure.py Bug 1790816 - Reformat client.py and configure.py with isort. r=linter-reviewers,sylvestre DONTBUILD 2022-11-24 13:09:01 +00:00
GNUmakefile
gradle.properties Bug 1786164 - Add more Gradle JVM memory flags. r=geckoview-reviewers,jonalmeida 2022-08-31 22:10:39 +00:00
gradlew
gradlew.bat
LICENSE
mach Bug 1766497 - Remove early exit on Homebrew Python3.10 now that we're using venv instead of virtualenv r=firefox-build-system-reviewers,nalexander 2022-11-01 07:48:06 +00:00
mach.cmd
mach.ps1
Makefile.in
mots.yaml Bug 1802174 - Add Kagami Rosylight as a DOM peer. r=mccr8,zeid DONTBUILD 2022-11-24 10:02:17 +00:00
moz.build
moz.configure Bug 1794517 - Make CI plain builds a little closer to local builds. r=firefox-build-system-reviewers,andi 2022-10-11 06:54:45 +00:00
mozilla-config.h.in
old-configure.in Bug 1796518 - Tweak lld flags for faster linkage on developer builds. r=firefox-build-system-reviewers,nalexander 2022-10-25 22:58:25 +00:00
package-lock.json Bug 1792465 - Add eslint-plugin-jsdoc and upgrade node_modules to latest versions. r=mossop 2022-10-03 06:55:28 +00:00
package.json Bug 1792465 - Add eslint-plugin-jsdoc and upgrade node_modules to latest versions. r=mossop 2022-10-03 06:55:28 +00:00
README.txt
settings.gradle Bug 1740799 - Add android-format lint test. r=nalexander,linter-reviewers,sylvestre 2022-11-18 00:55:03 +00:00
substitute-local-geckoview.gradle
test.mozbuild

An explanation of the Firefox Source Code Directory Structure and links to
project pages with documentation can be found at:

    https://firefox-source-docs.mozilla.org/contributing/directory_structure.html

For information on how to build Firefox from the source code and create the patch see:

    https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html

If you have a question about developing Firefox, and can't find the solution
on https://firefox-source-docs.mozilla.org/, you can try asking your question on Matrix at chat.mozilla.org in `Introduction` (https://chat.mozilla.org/#/room/#introduction:mozilla.org) channel.


Nightly development builds can be downloaded from:

    https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central/
            - or -
    https://www.mozilla.org/firefox/channel/desktop/#nightly

Keep in mind that nightly builds, which are used by Firefox developers for
testing, may be buggy.