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/
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 # XCode project cruft
214 # Rust/Cargo output from running `cargo` directly
216 ^servo/ports/geckolib/target/
217 ^dom/base/rust/target/
218 ^servo/components/style/target/
219 ^dom/webgpu/tests/cts/vendor/target/
221 # Ignore mozharness execution files
222 ^testing/mozharness/\.tox/
223 ^testing/mozharness/build/
224 ^testing/mozharness/logs/
225 ^testing/mozharness/\.coverage
226 ^testing/mozharness/nosetests\.xml
228 # Ignore tox generated dir
231 # Ignore talos virtualenv and tp5n files.
232 # The tp5n set is supposed to be decompressed at
233 # testing/talos/talos/fis|tests/tp5n in order to run tests like tps
234 # locally. Similarly, running talos requires a Python package virtual
235 # environment. Both the virtual environment and tp5n files end up littering
236 # the status command, so we ignore them.
237 ^testing/talos/\.Python
239 ^testing/talos/include/
241 ^testing/talos/talos/fis/tp5n\.zip
242 ^testing/talos/talos/fis/tp5n\.tar\.gz
243 ^testing/talos/talos/fis/tp5n
244 ^testing/talos/talos/tests/tp5n\.zip
245 ^testing/talos/talos/tests/tp5n\.tar\.gz
246 ^testing/talos/talos/tests/tp5n
247 ^testing/talos/talos/tests/devtools/damp\.manifest\.develop
248 ^testing/talos/talos/startup_test/startup_about_home_paint/startup_about_home_paint\.manifest\.develop
249 ^testing/talos/talos/webextensions/
252 ^testing/talos/talos/mitmproxy/mitmdump
253 ^testing/talos/talos/mitmproxy/mitmproxy
254 ^testing/talos/talos/mitmproxy/mitmweb
256 # Ignore talos webkit benchmark files; source is copied from in-tree /third_party
257 # into testing/talos/talos/tests/webkit/PerformanceTests/ when run locally
258 # i.e. speedometer, motionmark, stylebench
259 ^testing/talos/talos/tests/webkit/PerformanceTests
261 # Ignore sync tps logs and reports
265 # Ignore toolchains.json created by tooltool.
274 # Ignore files created when running a reftest.
277 # Ignore Visual Studio/Visual Studio Code workspace files.
279 # lint-ignore-next-line: syntax-difference
280 ^\.vscode/(?!extensions\.json$|tasks\.json$)
283 # Thunderbird source tree
286 # Ignore various raptor performance framework files
287 ^testing/raptor/\.raptor-venv
288 ^testing/raptor/raptor-venv
289 ^testing/raptor/raptor/tests/json/
290 ^testing/raptor/webext/raptor/auto_gen_test_config\.js
292 # Ignore condprofile build directory
293 ^testing/condprofile/build
295 # Ignore browsertime output directory
298 # Ignore the build directories of WebGPU and WebRender standalone builds.
303 # Ignore Rust/Cargo output from running `cargo` directly for image_builder docker image
304 ^taskcluster/docker/image_builder/build-image/target
306 # Ignore ICU4X experimentation data files.
307 # See intl/ICU4X.md for more details.
308 ^config/external/icu4x
310 # Ignore the index files generated by clangd.
311 ^\.cache/clangd/index/
316 # Ignore Storybook generated files
317 ^browser/components/storybook/node_modules/
318 ^browser/components/storybook/storybook-static/
319 ^browser/components/storybook/\.storybook/chrome-map\.js
320 ^browser/components/storybook/custom-elements\.json
322 # Ignore jscodeshift installed by mach esmify on windows
323 ^tools/esmify/jscodeshift
324 ^tools/esmify/jscodeshift\.cmd
325 ^tools/esmify/jscodeshift\.ps1
326 ^tools/esmify/package-lock\.json
328 # Ignore support files for en-US dictionary updates
329 ^extensions/spellcheck/locales/en-US/hunspell/dictionary-sources/scowl
330 ^extensions/spellcheck/locales/en-US/hunspell/dictionary-sources/support_files/
331 ^extensions/spellcheck/locales/en-US/hunspell/dictionary-sources/.*en_US-mozilla.*
333 # Ignore automatically generated mots documentation
334 ^docs/mots/index\.rst
336 # Ignore generated directory with .class files for GeckoView annotation processor
337 ^mobile/android/annotations/bin/