1 # Please DO NOT add more third party files to this file.
2 # They should be added to tools/rewriting/ThirdPartyPaths.txt instead.
4 # This file should only be used for exclusions where we have:
6 # - generated files that are for some reason checked into source
7 # - intentionally invalid files
8 # - build directories and other items that we need to ignore
12 # Always ignore node_modules.
15 # Always ignore crashtests - specially crafted files that originally caused a
18 # Also ignore reftest - specially crafted to produce expected output.
22 # Exclude expected objdirs.
25 # build/ third-party code
30 browser/branding/**/firefox-branding.js
32 browser/base/content/test/general/gZipOfflineChild.html
33 browser/base/content/test/urlbar/file_blank_but_not_blank.html
34 # Test files that are really json not js, and don't need to be linted.
35 browser/components/sessionstore/test/unit/data/sessionstore_valid.js
36 browser/components/sessionstore/test/unit/data/sessionstore_invalid.js
37 # This file is split into two in order to keep it as a valid json file
38 # for documentation purposes (policies.json) but to be accessed by the
39 # code as a .jsm (schema.jsm)
40 browser/components/enterprisepolicies/schemas/schema.jsm
41 # generated or library files in pocket
42 browser/components/pocket/content/panels/js/tmpl.js
43 browser/components/pocket/content/panels/js/vendor.bundle.js
44 browser/components/pocket/content/panels/js/main.bundle.js
45 # Include the Storybook config files.
46 !browser/components/storybook/.storybook/
47 !browser/components/storybook/.storybook/*.js
50 browser/components/newtab/aboutwelcome/content/aboutwelcome.bundle.js
51 browser/components/newtab/data/
52 browser/components/newtab/logs/
54 # The only file in browser/locales/ is pre-processed.
56 # Generated data files
57 browser/extensions/formautofill/phonenumberutils/PhoneNumberMetaData.jsm
59 # Ignore devtools debugger files which aren't intended for linting, and also
60 # aren't included in any .eslintignore or .prettierignore file.
61 # See https://github.com/firefox-devtools/debugger/blob/master/package.json#L24
62 devtools/client/debugger/bin/
63 devtools/client/debugger/configs/
64 devtools/client/debugger/dist/
65 devtools/client/debugger/images/
66 devtools/client/debugger/test/mochitest/examples/
67 devtools/client/debugger/index.html
68 devtools/client/debugger/webpack.config.js
70 # Ignore devtools preferences files
71 devtools/client/preferences/
73 # Ignore devtools generated code
74 devtools/shared/css/generated/properties-db.js
75 devtools/client/webconsole/test/node/fixtures/stubs/*.js
76 !devtools/client/webconsole/test/node/fixtures/stubs/index.js
77 devtools/client/shared/components/test/node/stubs/reps/*.js
78 devtools/client/shared/source-map-loader/test/browser/fixtures/*.js
80 # Ignore devtools files testing sourcemaps / code style
81 devtools/client/framework/test/code_*
82 devtools/client/inspector/markup/test/events_bundle.js
83 devtools/client/netmonitor/test/xhr_bundle.js
84 devtools/client/webconsole/test/browser/code_bundle_nosource.js
85 devtools/client/webconsole/test/browser/code_bundle_invalidmap.js
86 devtools/client/webconsole/test/browser/test-autocomplete-mapped.js
87 devtools/client/webconsole/test/browser/test-autocomplete-mapped.src.js
88 devtools/server/tests/xpcshell/setBreakpoint*
89 devtools/server/tests/xpcshell/sourcemapped.js
91 # Ignore generated code from wasm-bindgen
92 devtools/client/performance-new/profiler_get_symbols.js
94 # Testing syntax error
95 devtools/client/webconsole/test/browser/test-syntaxerror-worklet.js
97 # devtools specific format test file
98 devtools/server/tests/xpcshell/xpcshell_debugging_script.js
101 dom/canvas/test/webgl-conf/generated/
103 # Intentionally invalid/not parsable
104 dom/html/test/test_bug677658.html
105 dom/svg/test/test_nonAnimStrings.xhtml
106 dom/svg/test/test_SVG_namespace_ids.html
109 dom/base/test/file_bug687859-16.js
110 dom/encoding/test/test_utf16_files.html
111 dom/encoding/test/file_utf16_be_bom.js
112 dom/encoding/test/file_utf16_le_bom.js
114 # Service workers fixtures which require specific resource caching.
115 dom/base/test/file_js_cache.js
116 dom/serviceworkers/test/file_js_cache.js
118 # Intentional broken files
119 dom/base/test/file_js_cache_syntax_error.js
120 dom/base/test/jsmodules/test_syntaxError.html
121 dom/base/test/jsmodules/test_syntaxErrorAsync.html
122 dom/base/test/jsmodules/module_badSyntax.js
123 dom/base/test/jsmodules/test_syntaxErrorInline.html
124 dom/base/test/jsmodules/test_syntaxErrorInlineAsync.html
125 dom/base/test/test_bug687859.html
126 dom/media/webrtc/tests/mochitests/identity/idp-bad.js
127 dom/serviceworkers/test/file_js_cache_syntax_error.js
128 dom/serviceworkers/test/parse_error_worker.js
129 dom/tests/mochitest/bugs/test_bug531176.html
130 dom/webauthn/tests/cbor.js
131 dom/workers/test/importScripts_worker_imported3.js
132 dom/workers/test/invalid.js
133 dom/workers/test/threadErrors_worker1.js
135 # Bug 1527075: This directory is linted in github repository
138 # Exclude everything but self-hosted JS
146 # Changes to XPConnect tests must be carefully audited.
147 js/xpconnect/tests/mochitest/
148 js/xpconnect/tests/unit/
150 # Fuzzing code for testing only, targeting the JS shell
153 # Uses `#filter substitution`
154 mobile/android/app/mobile.js
155 mobile/android/app/geckoview-prefs.js
157 # Not much JS to lint and non-standard at that
158 mobile/android/installer/
159 mobile/android/locales/
161 # Pre-processed/pref files
162 modules/libpref/greprefs.js
163 modules/libpref/init/all.js
164 modules/libpref/test/unit/*data/
166 # Only contains non-standard test files.
169 # These are (mainly) imported code that we don't want to lint to make imports easier.
170 remote/cdp/Protocol.sys.mjs
171 remote/cdp/test/browser/chrome-remote-interface.js
172 remote/marionette/atom.sys.mjs
174 # This file explicitly has a syntax error and cannot be parsed by eslint.
175 remote/shared/messagehandler/test/browser/resources/modules/root/invalid.sys.mjs
177 # services/ exclusions
179 # Third party services
180 services/common/kinto-http-client.js
181 services/common/kinto-offline-client.js
183 # Webpack-bundled library
184 services/fxaccounts/FxAccountsPairingChannel.js
189 # Test files that we don't want to lint (preprocessed, minified etc)
190 testing/condprofile/condprof/tests/profile
191 testing/mozbase/mozprofile/tests/files/prefs_with_comments.js
192 testing/talos/talos/startup_test/sessionrestore/profile/sessionstore.js
193 testing/talos/talos/startup_test/sessionrestore/profile-manywindows/sessionstore.js
194 testing/talos/talos/tests/devtools/addon/content/pages/
195 # Runing Talos may extract data here, see bug 1435677.
196 testing/talos/talos/tests/tp5n/
197 testing/talos/talos/fis/tp5n/
199 # Mainly third-party related code, that shouldn't be linted.
200 testing/web-platform/
202 # toolkit/ exclusions
204 # Intentionally invalid JS
205 toolkit/components/workerloader/tests/moduleF-syntax-error.js
208 toolkit/components/pdfjs/content/build
209 toolkit/components/pdfjs/content/web
212 toolkit/components/reader/Readability.js
213 toolkit/components/reader/Readability-readerable.js
214 toolkit/components/reader/JSDOMParser.js
217 toolkit/components/reader/Readerable.jsm
219 # Generated & special files in cld2
220 toolkit/components/translation/cld2/
223 toolkit/mozapps/update/tests/data/xpcshellConstantsPP.js
224 toolkit/modules/AppConstants.sys.mjs
226 # Tests of ESLint command.
227 tools/lint/test/files
229 # Uses special template formatting.
230 tools/tryselect/selectors/chooser/templates/chooser.html
232 # Ignore preprocessed *(P)refs.js files in update-packaging.
233 tools/update-packaging/**/*refs.js
235 # Ignore backgroundtasks preferences files.
236 toolkit/components/backgroundtasks/defaults
238 # Ignore pre-generated webpack and typescript transpiled files for translations
239 browser/extensions/translations/extension/
241 # "scaffolding" used by uniffi which isn't valid JS in its original form.
242 toolkit/components/uniffi-bindgen-gecko-js/src/templates/js/
243 toolkit/components/uniffi-bindgen-gecko-js/components/generated/*