1 # Always ignore node_modules.
4 # Always ignore crashtests - specially crafted files that originally caused a
7 # Also ignore reftest - specially crafted to produce expected output.
11 # Exclude expected objdirs.
14 # We ignore all these directories by default, until we get them enabled.
15 # If you are enabling a directory, please add directory specific exclusions
17 docshell/test/browser/**
18 docshell/test/iframesandbox/**
19 docshell/test/mochitest/**
21 extensions/spellcheck/**
22 extensions/universalchardet/**
25 netwerk/cookie/test/browser/**
26 netwerk/test/browser/**
27 netwerk/test/mochitests/**
29 tools/update-packaging/**
32 # We currently have no js files in these directories, so we ignore them by
33 # default to aid ESLint's performance.
46 # These directories only contain crashtests, but we still skip the whole
47 # directory to aid performance.
52 browser/branding/**/firefox-branding.js
54 browser/base/content/test/general/gZipOfflineChild.html
55 browser/base/content/test/urlbar/file_blank_but_not_blank.html
56 # Test files that are really json not js, and don't need to be linted.
57 browser/components/sessionstore/test/unit/data/sessionstore_valid.js
58 browser/components/sessionstore/test/unit/data/sessionstore_invalid.js
59 # This file is split into two in order to keep it as a valid json file
60 # for documentation purposes (policies.json) but to be accessed by the
61 # code as a .jsm (schema.jsm)
62 browser/components/enterprisepolicies/schemas/schema.jsm
63 # Ignore generated code from wasm-bindgen
64 browser/components/extensions/profiler_get_symbols.js
65 # generated & special files in cld2
66 browser/components/translation/cld2/**
67 # Screenshots is imported as a system add-on and has
68 # their own lint rules currently.
69 browser/extensions/screenshots/**
70 browser/extensions/pdfjs/content/build**
71 browser/extensions/pdfjs/content/web**
72 # generated or library files in pocket
73 browser/components/pocket/content/panels/js/tmpl.js
74 browser/components/pocket/content/panels/js/vendor/**
75 # Activity Stream has incompatible eslintrc. `npm run lint` from its directory
76 browser/components/newtab/**
77 # The only file in browser/locales/ is pre-processed.
79 # imported from chromium
80 browser/extensions/mortar/**
81 # Generated data files
82 browser/extensions/formautofill/phonenumberutils/PhoneNumberMetaData.jsm
84 # devtools/ exclusions
85 devtools/client/inspector/markup/test/doc_markup_events_*.html
86 devtools/client/inspector/rules/test/doc_media_queries.html
87 devtools/client/performance/components/test/test_jit_optimizations_01.html
88 devtools/client/responsive.html/test/browser/touch.html
89 devtools/client/shared/test/*.html
90 devtools/client/shared/test/code_*.js
91 devtools/client/shared/components/test/mochitest/*.html
92 !devtools/client/shared/components/test/mochitest/test_stack-trace.html
93 devtools/client/storage/test/*.html
94 !devtools/client/storage/test/storage-cookies.html
95 !devtools/client/storage/test/storage-overflow.html
96 !devtools/client/storage/test/storage-search.html
97 !devtools/client/storage/test/storage-unsecured-iframe.html
98 !devtools/client/storage/test/storage-unsecured-iframe-usercontextid.html
99 devtools/server/tests/browser/storage-*.html
100 !devtools/server/tests/browser/storage-unsecured-iframe.html
101 devtools/server/tests/browser/stylesheets-nested-iframes.html
102 devtools/client/shared/webpack/shims/test/test_clipboard.html
103 devtools/shared/qrcode/tests/mochitest/test_decode.html
104 devtools/shared/tests/mochitest/*.html
105 devtools/shared/webconsole/test/test_*.html
106 devtools/client/webreplay/mochitest/examples/*.html
108 # Soon to be removed, the new/ directory is explicitly excluded below due to
109 # also being an imported repository.
110 devtools/client/debugger/**
112 # Ignore devtools imported repositories
113 devtools/client/debugger/new/**
114 devtools/client/shared/components/reps/**
116 # Ignore devtools preferences files
117 devtools/client/preferences/**
118 devtools/client/webide/preferences/**
119 devtools/shared/preferences/**
120 devtools/startup/preferences/devtools-startup.js
122 # Ignore devtools generated code
123 devtools/shared/css/generated/properties-db.js
124 devtools/client/webconsole/test/fixtures/stubs/*.js
125 !devtools/client/webconsole/test/fixtures/stubs/index.js
127 # Ignore devtools third-party libs
128 devtools/shared/jsbeautify/*
129 devtools/shared/acorn/*
130 devtools/shared/node-properties/*
131 devtools/shared/pretty-fast/*
132 devtools/shared/sourcemap/*
133 devtools/shared/sprintfjs/*
134 devtools/shared/qrcode/decoder/*
135 devtools/shared/qrcode/encoder/*
136 devtools/client/inspector/markup/test/lib_*
137 devtools/client/jsonview/lib/require.js
138 devtools/client/shared/demangle.js
139 devtools/client/shared/source-map/*
140 devtools/client/shared/vendor/*
141 devtools/client/shared/sourceeditor/codemirror/*.js
142 devtools/client/shared/sourceeditor/codemirror/**/*.js
143 devtools/client/shared/sourceeditor/tern/*
144 devtools/client/shared/sourceeditor/test/cm_mode_ruby.js
145 devtools/client/shared/sourceeditor/test/codemirror/*
146 devtools/server/actors/utils/automation-timeline.js
148 # Ignore devtools files testing sourcemaps / code style
149 devtools/client/debugger/test/mochitest/code_*.js
150 devtools/client/framework/test/code_*
151 devtools/client/inspector/markup/test/events_bundle.js
152 devtools/client/netmonitor/test/xhr_bundle.js
153 devtools/client/webconsole/test/mochitest/code_bundle_nosource.js
154 devtools/client/webconsole/test/mochitest/code_bundle_invalidmap.js
155 devtools/server/tests/unit/babel_and_browserify_script_with_source_map.js
156 devtools/server/tests/unit/setBreakpoint*
157 devtools/server/tests/unit/sourcemapped.js
159 # devtools specific format test file
160 devtools/server/tests/unit/xpcshell_debugging_script.js
166 dom/base/test/unit/test_serializers_entities*.js
167 dom/base/test/unit_ipc/**
168 dom/base/test/jsmodules/**
170 dom/browser-element/**
182 dom/media/webaudio/**
183 dom/media/webspeech/**
184 dom/messagechannel/**
193 dom/security/test/cors/**
194 dom/security/test/csp/**
195 dom/security/test/general/**
196 dom/security/test/mixedcontentblocker/**
197 dom/security/test/sri/**
198 dom/serviceworkers/**
203 dom/tests/mochitest/**
218 dom/canvas/test/webgl-conf/**
220 dom/media/webaudio/test/blink/**
224 editor/libeditor/tests/browserscope/**
238 layout/mathml/imptests/**
240 # Exclude everything but self-hosted JS
249 js/src/jsapi-tests/binast/**
254 media/webrtc/trunk/**
256 # mobile/android/ exclusions
257 mobile/android/tests/browser/chrome/tp5/**
259 # Uses `#filter substitution`
260 mobile/android/app/mobile.js
261 mobile/android/app/geckoview-prefs.js
264 mobile/android/chrome/content/about.js
266 # Not much JS to lint and non-standard at that
267 mobile/android/installer/
268 mobile/android/locales/
270 # Non-standard `(catch ex if ...)`
271 mobile/android/chrome/content/browser.js
273 # Pre-processed/pref files
274 modules/libpref/greprefs.js
275 modules/libpref/init/all.js
276 modules/libpref/test/unit/*data/**
278 # Only contains non-standard test files.
282 remote/pref/remote.js
284 remote/server/HTTPD.jsm
285 remote/server/Packet.jsm
286 remote/server/Socket.jsm
287 remote/server/Stream.jsm
288 remote/test/browser/chrome-remote-interface.js
291 # security/ exclusions (pref files).
292 security/manager/ssl/security-prefs.js
294 # NSS / taskcluster only.
297 # services/ exclusions
299 # Webpack-bundled library
300 services/fxaccounts/FxAccountsPairingChannel.js
302 # Uses `#filter substitution`
303 services/sync/modules/constants.js
304 services/sync/services-sync.js
309 # Remote protocol exclusions
310 testing/marionette/atom.js
311 testing/marionette/legacyaction.js
312 testing/marionette/client
313 testing/marionette/doc
314 testing/marionette/harness
316 # other testing/ exclusions
317 # third party modules
318 testing/mochitest/tests/Harness_sanity/**
319 testing/mochitest/MochiKit/**
320 testing/mochitest/tests/MochiKit-1.4.2/**
321 testing/mochitest/tests/SimpleTest/**
322 testing/modules/ajv-4.1.1.js
323 testing/modules/sinon-7.2.7.js
324 # octothorpe used for pref file comment causes parsing error
325 testing/mozbase/mozprofile/tests/files/prefs_with_comments.js
326 testing/talos/talos/scripts/jszip.min.js
327 testing/talos/talos/startup_test/sessionrestore/profile/sessionstore.js
328 testing/talos/talos/startup_test/sessionrestore/profile-manywindows/sessionstore.js
329 testing/talos/talos/tests/devtools/addon/content/pages/**
330 testing/talos/talos/tests/dromaeo/**
331 testing/talos/talos/tests/v8_7/**
332 testing/talos/talos/tests/kraken/**
333 # Runing Talos may extract data here, see bug 1435677.
334 testing/talos/talos/tests/tp5n/**
336 testing/raptor/raptor/playback/scripts/catapult/**
338 testing/web-platform/**
339 testing/xpcshell/moz-http2/**
340 testing/xpcshell/node-http2/**
342 # Third party services
343 services/common/kinto-http-client.js
344 services/common/kinto-offline-client.js
346 # toolkit/ exclusions
348 # Intentionally invalid JS
349 toolkit/components/workerloader/tests/moduleF-syntax-error.js
351 # Tests old non-star function generators
352 toolkit/modules/tests/xpcshell/test_task.js
355 browser/components/payments/res/vendor/*
356 toolkit/components/reader/Readability.js
357 toolkit/components/reader/JSDOMParser.js
360 toolkit/components/reader/Readerable.jsm
361 toolkit/content/widgets/wizard.xml
362 toolkit/modules/AppConstants.jsm
363 toolkit/mozapps/update/tests/data/xpcshellConstantsPP.js
364 tools/tryselect/selectors/chooser/templates/chooser.html
367 toolkit/modules/third_party/**