1 # .hgignore - List of filenames hg should ignore
3 # See docs/code-quality/lint/linters/ignorefile.rst for lint-ignore-next-line
6 # Filenames that should be ignored wherever they appear
18 (^|/)compile_commands\.json$
20 # Ignore ID generated by idutils.
23 # Generated by hg or patch (e.g. revert, failed patch, ...)
27 # Filesystem temporaries
30 # Ignore Python .egg-info directories for first-party modules (but,
31 # still add vendored packages' .egg-info directories)
32 # lint-ignore-next-line: syntax-difference
33 ^(?=.*\.egg-info/)(?!^third_party/python/)(?!^testing/web-platform/tests/tools/third_party/)
39 # Emacs directory variable files.
41 # Emacs project sentinel files.
44 # User files that may appear at the root
60 # Empty marker file that's generated when we check out NSS
61 ^security/manager/\.nss\.checkout$
66 # gecko.log is generated by various test harnesses
69 # Ignore all node_modules directories except for ones under third_party
71 ^devtools/.*/node_modules/
72 ^tools/browsertime/node_modules/
73 ^tools/lint/eslint/eslint-plugin-mozilla/node_modules/
74 ^browser/components/asrouter/node_modules/
75 ^browser/components/newtab/node_modules/
76 ^browser/components/aboutwelcome/node_modules/
77 ^tools/ts/node_modules/
79 # Ignore newtab component build assets
80 ^browser/components/newtab/logs/
82 # Ignore about:welcome component build assets
83 ^browser/components/aboutwelcome/logs/
85 # Ignore ASRouter component build assets
86 ^browser/components/asrouter/logs/
88 # Ignore ASRouter generated test files
89 ^browser/components/asrouter/content-src/schemas/corpus/CFRMessageProvider\.messages\.json
90 ^browser/components/asrouter/content-src/schemas/corpus/OnboardingMessageProvider\.messages\.json
91 ^browser/components/asrouter/content-src/schemas/corpus/PanelTestProvider\.messages\.json
92 ^browser/components/asrouter/content-src/schemas/corpus/PanelTestProvider_toast_notification\.messages\.json
94 # Ignore Pocket component build and dev assets
95 ^browser/components/pocket/content/panels/css/main\.compiled\.css\.map
97 # Ignore downloaded thirdparty build artifacts.
98 ^toolkit/components/translations/bergamot-translator/thirdparty
100 # Build directories for js shell
106 # SpiderMonkey configury
107 ^js/src/old-configure$
108 ^js/src/autom4te\.cache$
110 # SpiderMonkey test result logs
111 ^js/src/tests/results-.*\.html$
112 ^js/src/tests/results-.*\.txt$
113 ^js/src/devtools/rootAnalysis/t/out
115 # SpiderMonkey wasm/generate-spectests artifacts
116 ^js/src/jit-test/etc/wasm/generate-spectests/specs/
117 ^js/src/jit-test/etc/wasm/generate-spectests/tests/
118 ^js/src/jit-test/etc/wasm/generate-spectests/target/
120 # Java HTML5 parser classes
121 ^parser/html/java/htmlparser/
122 ^parser/html/java/javaparser/
123 ^parser/html/java/javaparser\.jar$
124 ^parser/html/java/translator\.jar$
129 # Ignore the files and directory that Eclipse IDE creates
134 # Ignore the files and directory that JetBrains IDEs create.
138 # Android Monitor in Android Studio creates a captures/ directory.
144 # Local Gradle configuration properties.
148 # lint-ignore-next-line: hg-only
151 # Ignore chrome.manifest files from the devtools loader
152 ^devtools/client/chrome\.manifest$
153 ^devtools/shared/chrome\.manifest$
155 # Ignore debugger build directories
156 ^devtools/client/debugger/assets/build
157 ^devtools/client/debugger/assets/module-manifest\.json
159 # Ignore node_module directories and npm artifacts
160 ^remote/test/puppeteer/.*\.tsbuildinfo
161 ^remote/test/puppeteer/.*/lib/
162 ^remote/test/puppeteer/.*/node_modules/
163 ^remote/test/puppeteer/.*/\.wireit/
164 ^remote/test/puppeteer/\.devcontainer/
165 ^remote/test/puppeteer/\.github
166 ^remote/test/puppeteer/\.husky
167 ^remote/test/puppeteer/\.wireit/
168 ^remote/test/puppeteer/coverage/
169 ^remote/test/puppeteer/docker/
170 ^remote/test/puppeteer/docs/puppeteer-core\.api\.json
171 ^remote/test/puppeteer/docs/puppeteer\.api\.json
172 ^remote/test/puppeteer/experimental/
173 ^remote/test/puppeteer/lib/
174 ^remote/test/puppeteer/node_modules/
175 ^remote/test/puppeteer/package-lock\.json
176 ^remote/test/puppeteer/packages/ng-schematics/test/build
177 ^remote/test/puppeteer/packages/puppeteer/.*/README\.md
178 ^remote/test/puppeteer/packages/puppeteer-core/src/generated
179 ^remote/test/puppeteer/packages/puppeteer-core/.*/README\.md
180 ^remote/test/puppeteer/src/generated
181 ^remote/test/puppeteer/test/build
182 ^remote/test/puppeteer/test/installation/puppeteer.*\.tgz
183 ^remote/test/puppeteer/test/output-firefox
184 ^remote/test/puppeteer/test/output-chromium
185 ^remote/test/puppeteer/testserver/lib/
186 ^remote/test/puppeteer/tools/internal/
187 ^remote/test/puppeteer/tools/mocha-runner/bin/
188 ^remote/test/puppeteer/website
190 ^third_party/js/PKI\.js/node_modules/
191 ^third_party/js/PKI\.js/package-lock\.json
193 # git checkout of libstagefright
194 ^media/libstagefright/android$
196 # Tag files generated by GNU Global
202 # Git clone directory for updating web-platform-tests
203 ^testing/web-platform/sync/
205 # Third party metadata for web-platform-tests
206 ^testing/web-platform/products/
208 # Android Gradle artifacts.
209 ^mobile/android/gradle/\.gradle
211 # Android build cache
212 ^mobile/android/.*\/.build-cache
213 ^mobile/android/.*\/.gradle
214 ^mobile/android/.*\/build
215 ^mobile/android/.*\/bin
216 ^mobile/android/.*\/generated
218 # Android local.properties
219 ^mobile/android/.*\/local.properties
221 # Android - Web extensions: manifest.json files are generated
222 ^mobile/android/.*\/manifest.json
224 # XCode project cruft
227 # Rust/Cargo output from running `cargo` directly
229 ^servo/ports/geckolib/target/
230 ^dom/base/rust/target/
231 ^servo/components/style/target/
232 ^dom/webgpu/tests/cts/vendor/target/
234 # Ignore mozharness execution files
235 ^testing/mozharness/\.tox/
236 ^testing/mozharness/build/
237 ^testing/mozharness/logs/
238 ^testing/mozharness/\.coverage
239 ^testing/mozharness/nosetests\.xml
241 # Ignore tox generated dir
244 # Ignore talos virtualenv and tp5n files.
245 # The tp5n set is supposed to be decompressed at
246 # testing/talos/talos/fis|tests/tp5n in order to run tests like tps
247 # locally. Similarly, running talos requires a Python package virtual
248 # environment. Both the virtual environment and tp5n files end up littering
249 # the status command, so we ignore them.
250 ^testing/talos/\.Python
252 ^testing/talos/include/
254 ^testing/talos/talos/fis/tp5n\.zip
255 ^testing/talos/talos/fis/tp5n\.tar\.gz
256 ^testing/talos/talos/fis/tp5n
257 ^testing/talos/talos/tests/tp5n\.zip
258 ^testing/talos/talos/tests/tp5n\.tar\.gz
259 ^testing/talos/talos/tests/tp5n
260 ^testing/talos/talos/tests/pdfpaint/pdfs
261 ^testing/talos/talos/tests/devtools/damp\.manifest\.develop
262 ^testing/talos/talos/startup_test/startup_about_home_paint/startup_about_home_paint\.manifest\.develop
263 ^testing/talos/talos/webextensions/
266 ^testing/talos/talos/mitmproxy/mitmdump
267 ^testing/talos/talos/mitmproxy/mitmproxy
268 ^testing/talos/talos/mitmproxy/mitmweb
270 # Ignore talos webkit benchmark files; source is copied from in-tree /third_party
271 # into testing/talos/talos/tests/webkit/PerformanceTests/ when run locally
272 # i.e. speedometer, motionmark, stylebench
273 ^testing/talos/talos/tests/webkit/PerformanceTests
275 # Ignore sync tps logs and reports
279 # Ignore toolchains.json created by tooltool.
288 # Ignore files created when running a reftest.
291 # Ignore Visual Studio/Visual Studio Code workspace files.
293 # lint-ignore-next-line: syntax-difference
294 ^\.vscode/(?!extensions\.json$|tasks\.json$)
297 # Thunderbird source tree
300 # Ignore various raptor performance framework files
301 ^testing/raptor/\.raptor-venv
302 ^testing/raptor/raptor-venv
303 ^testing/raptor/raptor/tests/json/
304 ^testing/raptor/webext/raptor/auto_gen_test_config\.js
306 # Ignore condprofile build directory
307 ^testing/condprofile/build
309 # Ignore browsertime output directory
312 # Ignore the build directories of WebGPU and WebRender standalone builds.
317 # Ignore Rust/Cargo output from running `cargo` directly for image_builder docker image
318 ^taskcluster/docker/image_builder/build-image/target
320 # Ignore ICU4X experimentation data files.
321 # See intl/ICU4X.md for more details.
322 ^config/external/icu4x
324 # Ignore the index files generated by clangd.
325 ^\.cache/clangd/index/
330 # Ignore Storybook generated files
331 ^browser/components/storybook/node_modules/
332 ^browser/components/storybook/storybook-static/
333 ^browser/components/storybook/\.storybook/chrome-map\.js
334 ^browser/components/storybook/custom-elements\.json
336 # Ignore design-system node_modules
337 toolkit/themes/shared/design-system/node_modules/
339 # Ignore TypeScript declarations reference file updated by tooling.
340 ^tools/@types/index.d.ts
342 # Ignore support files for en-US dictionary updates
343 ^extensions/spellcheck/locales/en-US/hunspell/dictionary-sources/scowl
344 ^extensions/spellcheck/locales/en-US/hunspell/dictionary-sources/support_files/
345 ^extensions/spellcheck/locales/en-US/hunspell/dictionary-sources/.*en_US-mozilla.*
347 # Ignore automatically generated mots documentation
348 ^docs/mots/index\.rst
350 # Ignore generated directory with .class files for GeckoView annotation processor
351 ^mobile/android/annotations/bin/
353 # Ignore generated log files under media/libvpx
354 ^media/libvpx/config/.*/config.log