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/esmify/node_modules/
78 ^tools/ts/node_modules/
80 # Ignore newtab component build assets
81 ^browser/components/newtab/logs/
83 # Ignore about:welcome component build assets
84 ^browser/components/aboutwelcome/logs/
86 # Ignore ASRouter component build assets
87 ^browser/components/asrouter/logs/
89 # Ignore ASRouter generated test files
90 ^browser/components/asrouter/content-src/schemas/corpus/CFRMessageProvider\.messages\.json
91 ^browser/components/asrouter/content-src/schemas/corpus/OnboardingMessageProvider\.messages\.json
92 ^browser/components/asrouter/content-src/schemas/corpus/PanelTestProvider\.messages\.json
93 ^browser/components/asrouter/content-src/schemas/corpus/PanelTestProvider_toast_notification\.messages\.json
95 # Ignore Pocket component build and dev assets
96 ^browser/components/pocket/content/panels/css/main\.compiled\.css\.map
98 # Ignore downloaded thirdparty build artifacts.
99 ^toolkit/components/translations/bergamot-translator/thirdparty
101 # Build directories for js shell
107 # SpiderMonkey configury
108 ^js/src/old-configure$
109 ^js/src/autom4te\.cache$
111 # SpiderMonkey test result logs
112 ^js/src/tests/results-.*\.html$
113 ^js/src/tests/results-.*\.txt$
114 ^js/src/devtools/rootAnalysis/t/out
116 # SpiderMonkey wasm/generate-spectests artifacts
117 ^js/src/jit-test/etc/wasm/generate-spectests/specs/
118 ^js/src/jit-test/etc/wasm/generate-spectests/tests/
119 ^js/src/jit-test/etc/wasm/generate-spectests/target/
121 # Java HTML5 parser classes
122 ^parser/html/java/htmlparser/
123 ^parser/html/java/javaparser/
124 ^parser/html/java/javaparser\.jar$
125 ^parser/html/java/translator\.jar$
130 # Ignore the files and directory that Eclipse IDE creates
135 # Ignore the files and directory that JetBrains IDEs create.
139 # Android Monitor in Android Studio creates a captures/ directory.
145 # Local Gradle configuration properties.
149 # lint-ignore-next-line: hg-only
152 # Ignore chrome.manifest files from the devtools loader
153 ^devtools/client/chrome\.manifest$
154 ^devtools/shared/chrome\.manifest$
156 # Ignore debugger build directories
157 ^devtools/client/debugger/assets/build
158 ^devtools/client/debugger/assets/module-manifest\.json
160 # Ignore node_module directories and npm artifacts
161 ^remote/test/puppeteer/.*\.tsbuildinfo
162 ^remote/test/puppeteer/.*/lib/
163 ^remote/test/puppeteer/.*/node_modules/
164 ^remote/test/puppeteer/.*/\.wireit/
165 ^remote/test/puppeteer/\.devcontainer/
166 ^remote/test/puppeteer/\.github
167 ^remote/test/puppeteer/\.husky
168 ^remote/test/puppeteer/\.wireit/
169 ^remote/test/puppeteer/coverage/
170 ^remote/test/puppeteer/docker/
171 ^remote/test/puppeteer/docs/puppeteer-core\.api\.json
172 ^remote/test/puppeteer/docs/puppeteer\.api\.json
173 ^remote/test/puppeteer/experimental/
174 ^remote/test/puppeteer/lib/
175 ^remote/test/puppeteer/node_modules/
176 ^remote/test/puppeteer/package-lock\.json
177 ^remote/test/puppeteer/packages/ng-schematics/test/build
178 ^remote/test/puppeteer/packages/puppeteer/.*/README\.md
179 ^remote/test/puppeteer/packages/puppeteer-core/src/generated
180 ^remote/test/puppeteer/packages/puppeteer-core/.*/README\.md
181 ^remote/test/puppeteer/src/generated
182 ^remote/test/puppeteer/test/build
183 ^remote/test/puppeteer/test/installation/puppeteer.*\.tgz
184 ^remote/test/puppeteer/test/output-firefox
185 ^remote/test/puppeteer/test/output-chromium
186 ^remote/test/puppeteer/testserver/lib/
187 ^remote/test/puppeteer/tools/internal/
188 ^remote/test/puppeteer/tools/mocha-runner/bin/
189 ^remote/test/puppeteer/website
191 ^third_party/js/PKI\.js/node_modules/
192 ^third_party/js/PKI\.js/package-lock\.json
194 # git checkout of libstagefright
195 ^media/libstagefright/android$
197 # Tag files generated by GNU Global
203 # Git clone directory for updating web-platform-tests
204 ^testing/web-platform/sync/
206 # Third party metadata for web-platform-tests
207 ^testing/web-platform/products/
209 # Android Gradle artifacts.
210 ^mobile/android/gradle/\.gradle
212 # Android build cache
213 ^mobile/android/.*\/.build-cache
214 ^mobile/android/.*\/.gradle
215 ^mobile/android/.*\/build
216 ^mobile/android/.*\/bin
217 ^mobile/android/.*\/generated
219 # Android local.properties
220 ^mobile/android/.*\/local.properties
222 # Android - Web extensions: manifest.json files are generated
223 ^mobile/android/.*\/manifest.json
225 # XCode project cruft
228 # Rust/Cargo output from running `cargo` directly
230 ^servo/ports/geckolib/target/
231 ^dom/base/rust/target/
232 ^servo/components/style/target/
233 ^dom/webgpu/tests/cts/vendor/target/
235 # Ignore mozharness execution files
236 ^testing/mozharness/\.tox/
237 ^testing/mozharness/build/
238 ^testing/mozharness/logs/
239 ^testing/mozharness/\.coverage
240 ^testing/mozharness/nosetests\.xml
242 # Ignore tox generated dir
245 # Ignore talos virtualenv and tp5n files.
246 # The tp5n set is supposed to be decompressed at
247 # testing/talos/talos/fis|tests/tp5n in order to run tests like tps
248 # locally. Similarly, running talos requires a Python package virtual
249 # environment. Both the virtual environment and tp5n files end up littering
250 # the status command, so we ignore them.
251 ^testing/talos/\.Python
253 ^testing/talos/include/
255 ^testing/talos/talos/fis/tp5n\.zip
256 ^testing/talos/talos/fis/tp5n\.tar\.gz
257 ^testing/talos/talos/fis/tp5n
258 ^testing/talos/talos/tests/tp5n\.zip
259 ^testing/talos/talos/tests/tp5n\.tar\.gz
260 ^testing/talos/talos/tests/tp5n
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 jscodeshift installed by mach esmify on windows
340 ^tools/esmify/jscodeshift
341 ^tools/esmify/jscodeshift\.cmd
342 ^tools/esmify/jscodeshift\.ps1
343 ^tools/esmify/package-lock\.json
345 # Ignore TypeScript declarations reference file updated by tooling.
346 ^tools/@types/index.d.ts
348 # Ignore support files for en-US dictionary updates
349 ^extensions/spellcheck/locales/en-US/hunspell/dictionary-sources/scowl
350 ^extensions/spellcheck/locales/en-US/hunspell/dictionary-sources/support_files/
351 ^extensions/spellcheck/locales/en-US/hunspell/dictionary-sources/.*en_US-mozilla.*
353 # Ignore automatically generated mots documentation
354 ^docs/mots/index\.rst
356 # Ignore generated directory with .class files for GeckoView annotation processor
357 ^mobile/android/annotations/bin/
359 # Ignore generated log files under media/libvpx
360 ^media/libvpx/config/.*/config.log