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 extensions/permissions/**
18 extensions/spellcheck/**
19 extensions/universalchardet/**
22 netwerk/cookie/test/browser/**
23 netwerk/test/browser/**
24 netwerk/test/mochitests/**
28 # We currently have no js files in these directories, so we ignore them by
29 # default to aid ESLint's performance.
42 # These directories only contain crashtests, but we still skip the whole
43 # directory to aid performance.
48 browser/branding/**/firefox-branding.js
50 browser/base/content/test/general/gZipOfflineChild.html
51 browser/base/content/test/urlbar/file_blank_but_not_blank.html
53 browser/components/payments/res/vendor/*
54 # Test files that are really json not js, and don't need to be linted.
55 browser/components/sessionstore/test/unit/data/sessionstore_valid.js
56 browser/components/sessionstore/test/unit/data/sessionstore_invalid.js
57 # This file is split into two in order to keep it as a valid json file
58 # for documentation purposes (policies.json) but to be accessed by the
59 # code as a .jsm (schema.jsm)
60 browser/components/enterprisepolicies/schemas/schema.jsm
61 # generated & special files in cld2
62 browser/components/translation/cld2/**
63 # Screenshots is imported as a system add-on and has
64 # their own lint rules currently.
65 browser/extensions/screenshots/**
66 browser/extensions/pdfjs/content/build**
67 browser/extensions/pdfjs/content/web**
68 # generated or library files in pocket
69 browser/components/pocket/content/panels/js/tmpl.js
70 browser/components/pocket/content/panels/js/vendor/**
71 # Activity Stream has incompatible eslintrc. `npm run lint` from its directory
72 browser/components/newtab/**
73 # The only file in browser/locales/ is pre-processed.
75 # imported from chromium
76 browser/extensions/mortar/**
77 # Generated data files
78 browser/extensions/formautofill/phonenumberutils/PhoneNumberMetaData.jsm
80 # devtools/ exclusions
81 devtools/client/inspector/markup/test/doc_markup_events_*.html
82 devtools/client/inspector/rules/test/doc_media_queries.html
83 devtools/client/performance/components/test/test_jit_optimizations_01.html
84 devtools/client/responsive.html/test/browser/touch.html
85 devtools/client/shared/test/*.html
86 devtools/client/shared/test/code_*.js
87 devtools/client/shared/components/test/mochitest/*.html
88 !devtools/client/shared/components/test/mochitest/test_stack-trace.html
89 devtools/client/storage/test/*.html
90 !devtools/client/storage/test/storage-cookies.html
91 !devtools/client/storage/test/storage-overflow.html
92 !devtools/client/storage/test/storage-search.html
93 !devtools/client/storage/test/storage-unsecured-iframe.html
94 !devtools/client/storage/test/storage-unsecured-iframe-usercontextid.html
95 devtools/server/tests/browser/storage-*.html
96 !devtools/server/tests/browser/storage-unsecured-iframe.html
97 devtools/server/tests/browser/stylesheets-nested-iframes.html
98 devtools/client/shared/webpack/shims/test/test_clipboard.html
99 devtools/shared/qrcode/tests/mochitest/test_decode.html
100 devtools/shared/tests/mochitest/*.html
101 devtools/shared/webconsole/test/test_*.html
102 devtools/client/webreplay/mochitest/examples/*.html
104 # Soon to be removed, the new/ directory is explicitly excluded below due to
105 # also being an imported repository.
106 devtools/client/debugger/**
108 # Ignore devtools imported repositories
109 devtools/client/debugger/**
110 devtools/client/shared/components/reps/**
112 # Ignore devtools preferences files
113 devtools/client/preferences/**
114 devtools/client/webide/preferences/**
115 devtools/shared/preferences/**
116 devtools/startup/preferences/devtools-startup.js
118 # Ignore devtools generated code
119 devtools/shared/css/generated/properties-db.js
120 devtools/client/webconsole/test/fixtures/stubs/*.js
121 !devtools/client/webconsole/test/fixtures/stubs/index.js
123 # Ignore devtools third-party libs
124 devtools/shared/jsbeautify/*
125 devtools/shared/acorn/*
126 devtools/shared/node-properties/*
127 devtools/shared/pretty-fast/*
128 devtools/shared/sourcemap/*
129 devtools/shared/sprintfjs/*
130 devtools/shared/qrcode/decoder/*
131 devtools/shared/qrcode/encoder/*
132 devtools/client/inspector/markup/test/lib_*
133 devtools/client/jsonview/lib/require.js
134 devtools/client/shared/demangle.js
135 devtools/client/shared/source-map/*
136 devtools/client/shared/vendor/*
137 devtools/client/shared/sourceeditor/codemirror/*.js
138 devtools/client/shared/sourceeditor/codemirror/**/*.js
139 devtools/client/shared/sourceeditor/tern/*
140 devtools/client/shared/sourceeditor/test/cm_mode_ruby.js
141 devtools/client/shared/sourceeditor/test/codemirror/*
142 devtools/server/actors/utils/automation-timeline.js
144 # Ignore devtools files testing sourcemaps / code style
145 devtools/client/debugger/test/mochitest/code_*.js
146 devtools/client/framework/test/code_*
147 devtools/client/inspector/markup/test/events_bundle.js
148 devtools/client/netmonitor/test/xhr_bundle.js
149 devtools/client/webconsole/test/mochitest/code_bundle_nosource.js
150 devtools/client/webconsole/test/mochitest/code_bundle_invalidmap.js
151 devtools/server/tests/unit/babel_and_browserify_script_with_source_map.js
152 devtools/server/tests/unit/setBreakpoint*
153 devtools/server/tests/unit/sourcemapped.js
155 # devtools specific format test file
156 devtools/server/tests/unit/xpcshell_debugging_script.js
158 # dom/ exclusions which should be removed (aka ESLint enabled)
162 dom/base/test/unit/test_serializers_entities*.js
163 dom/base/test/unit_ipc/**
164 dom/base/test/jsmodules/**
175 !dom/media/test/marionette/yttest/*.js
177 dom/media/webaudio/**
178 dom/media/webspeech/**
179 dom/messagechannel/**
187 dom/security/test/cors/**
188 dom/security/test/csp/**
189 dom/security/test/general/**
190 dom/security/test/mixedcontentblocker/**
191 dom/security/test/sri/**
192 dom/serviceworkers/**
195 dom/tests/mochitest/**
210 dom/canvas/test/webgl-conf/**
212 dom/media/webaudio/test/blink/**
214 dom/svg/test/test_nonAnimStrings.xhtml
215 dom/svg/test/test_SVG_namespace_ids.html
218 editor/libeditor/tests/browserscope/**
230 # Bug 1527075: This directory is linted in github repository
234 layout/mathml/imptests/**
236 # Exclude everything but self-hosted JS
245 js/src/jsapi-tests/binast/**
250 media/webrtc/trunk/**
252 # mobile/android/ exclusions
253 mobile/android/tests/browser/chrome/tp5/**
255 # Uses `#filter substitution`
256 mobile/android/app/mobile.js
257 mobile/android/app/geckoview-prefs.js
260 mobile/android/chrome/content/about.js
262 # Not much JS to lint and non-standard at that
263 mobile/android/installer/
264 mobile/android/locales/
266 # Pre-processed/pref files
267 modules/libpref/greprefs.js
268 modules/libpref/init/all.js
269 modules/libpref/test/unit/*data/**
271 # Only contains non-standard test files.
275 remote/pref/remote.js
277 remote/server/HTTPD.jsm
278 remote/server/Packet.jsm
279 remote/server/Socket.jsm
280 remote/server/Stream.jsm
281 remote/test/browser/chrome-remote-interface.js
284 # security/ exclusions (pref files).
285 security/manager/ssl/security-prefs.js
287 # NSS / taskcluster only.
290 # services/ exclusions
292 # Third party services
293 services/common/kinto-http-client.js
294 services/common/kinto-offline-client.js
296 # Webpack-bundled library
297 services/fxaccounts/FxAccountsPairingChannel.js
299 # Uses `#filter substitution`
300 services/sync/modules/constants.js
301 services/sync/services-sync.js
306 # Remote protocol exclusions
307 testing/marionette/atom.js
308 testing/marionette/legacyaction.js
309 testing/marionette/client
310 testing/marionette/doc
311 testing/marionette/harness
313 # other testing/ exclusions
314 # third party modules
315 testing/mochitest/tests/Harness_sanity/**
316 testing/mochitest/MochiKit/**
317 testing/mochitest/tests/MochiKit-1.4.2/**
318 testing/mochitest/tests/SimpleTest/**
319 testing/modules/ajv-4.1.1.js
320 testing/modules/sinon-7.2.7.js
321 # octothorpe used for pref file comment causes parsing error
322 testing/mozbase/mozprofile/tests/files/prefs_with_comments.js
323 testing/talos/talos/scripts/jszip.min.js
324 testing/talos/talos/startup_test/sessionrestore/profile/sessionstore.js
325 testing/talos/talos/startup_test/sessionrestore/profile-manywindows/sessionstore.js
326 testing/talos/talos/tests/devtools/addon/content/pages/**
327 testing/talos/talos/tests/dromaeo/**
328 testing/talos/talos/tests/v8_7/**
329 testing/talos/talos/tests/kraken/**
330 # Runing Talos may extract data here, see bug 1435677.
331 testing/talos/talos/tests/tp5n/**
333 testing/raptor/raptor/playback/scripts/catapult/**
335 testing/web-platform/**
336 testing/xpcshell/moz-http2/**
337 testing/xpcshell/node-http2/**
338 testing/xpcshell/dns-packet/**
339 testing/xpcshell/node-ip/**
345 # toolkit/ exclusions
347 # Ignore generated code from wasm-bindgen
348 toolkit/components/extensions/profiler_get_symbols.js
350 # Intentionally invalid JS
351 toolkit/components/workerloader/tests/moduleF-syntax-error.js
354 toolkit/components/reader/Readability.js
355 toolkit/components/reader/JSDOMParser.js
358 toolkit/components/reader/Readerable.jsm
360 # Should be going away soon
361 toolkit/content/widgets/wizard.xml
364 toolkit/mozapps/update/tests/data/xpcshellConstantsPP.js
365 toolkit/modules/AppConstants.jsm
367 # Tests old non-star function generators
368 toolkit/modules/tests/xpcshell/test_task.js
371 toolkit/modules/third_party/**
373 tools/tryselect/selectors/chooser/templates/chooser.html
375 # Ignore preprocessed *(P)refs.js files in update-packaging.
376 tools/update-packaging/**/*refs.js