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/**
26 gfx/tests/mochitest/**
30 netwerk/cookie/test/browser/**
31 netwerk/test/browser/**
32 netwerk/test/mochitests/**
34 tools/update-packaging/**
35 uriloader/exthandler/**
36 uriloader/exthandler/tests/mochitest/**
37 widget/headless/tests/**
41 # We currently have no js files in these directories, so we ignore them by
42 # default to aid ESLint's performance.
55 # These directories only contain crashtests, but we still skip the whole
56 # directory to aid performance.
61 browser/branding/**/firefox-branding.js
63 browser/base/content/test/general/gZipOfflineChild.html
64 browser/base/content/test/urlbar/file_blank_but_not_blank.html
65 # Test files that are really json not js, and don't need to be linted.
66 browser/components/sessionstore/test/unit/data/sessionstore_valid.js
67 browser/components/sessionstore/test/unit/data/sessionstore_invalid.js
68 # This file is split into two in order to keep it as a valid json file
69 # for documentation purposes (policies.json) but to be accessed by the
70 # code as a .jsm (schema.jsm)
71 browser/components/enterprisepolicies/schemas/schema.jsm
72 # generated & special files in cld2
73 browser/components/translation/cld2/**
74 # Screenshots is imported as a system add-on and has
75 # their own lint rules currently.
76 browser/extensions/screenshots/**
77 browser/extensions/pdfjs/content/build**
78 browser/extensions/pdfjs/content/web**
79 # generated or library files in pocket
80 browser/components/pocket/content/panels/js/tmpl.js
81 browser/components/pocket/content/panels/js/vendor/**
82 # Activity Stream has incompatible eslintrc. `npm run lint` from its directory
83 browser/components/newtab/**
84 # The only file in browser/locales/ is pre-processed.
86 # imported from chromium
87 browser/extensions/mortar/**
88 # Generated data files
89 browser/extensions/formautofill/phonenumberutils/PhoneNumberMetaData.jsm
91 # devtools/ exclusions
92 devtools/client/inspector/markup/test/doc_markup_events_*.html
93 devtools/client/inspector/rules/test/doc_media_queries.html
94 devtools/client/performance/components/test/test_jit_optimizations_01.html
95 devtools/client/responsive.html/test/browser/touch.html
96 devtools/client/shared/test/*.html
97 devtools/client/shared/test/code_*.js
98 devtools/client/shared/components/test/mochitest/*.html
99 !devtools/client/shared/components/test/mochitest/test_stack-trace.html
100 devtools/client/storage/test/*.html
101 !devtools/client/storage/test/storage-cookies.html
102 !devtools/client/storage/test/storage-overflow.html
103 !devtools/client/storage/test/storage-search.html
104 !devtools/client/storage/test/storage-unsecured-iframe.html
105 !devtools/client/storage/test/storage-unsecured-iframe-usercontextid.html
106 devtools/server/tests/browser/storage-*.html
107 !devtools/server/tests/browser/storage-unsecured-iframe.html
108 devtools/server/tests/browser/stylesheets-nested-iframes.html
109 devtools/client/shared/webpack/shims/test/test_clipboard.html
110 devtools/shared/qrcode/tests/mochitest/test_decode.html
111 devtools/shared/tests/mochitest/*.html
112 devtools/shared/webconsole/test/test_*.html
114 # Soon to be removed, the new/ directory is explicitly excluded below due to
115 # also being an imported repository.
116 devtools/client/debugger/**
118 # Ignore devtools imported repositories
119 devtools/client/debugger/new/**
120 devtools/client/shared/components/reps/**
122 # Ignore devtools preferences files
123 devtools/client/preferences/**
124 devtools/client/webide/preferences/**
125 devtools/shared/preferences/**
126 devtools/startup/preferences/devtools-startup.js
128 # Ignore devtools generated code
129 devtools/shared/css/generated/properties-db.js
130 devtools/client/webconsole/test/fixtures/stubs/*.js
131 !devtools/client/webconsole/test/fixtures/stubs/index.js
133 # Ignore devtools third-party libs
134 devtools/shared/jsbeautify/*
135 devtools/shared/acorn/*
136 devtools/shared/node-properties/*
137 devtools/shared/pretty-fast/*
138 devtools/shared/sourcemap/*
139 devtools/shared/sprintfjs/*
140 devtools/shared/qrcode/decoder/*
141 devtools/shared/qrcode/encoder/*
142 devtools/client/inspector/markup/test/lib_*
143 devtools/client/jsonview/lib/require.js
144 devtools/client/shared/demangle.js
145 devtools/client/shared/source-map/*
146 devtools/client/shared/vendor/*
147 devtools/client/sourceeditor/codemirror/*.js
148 devtools/client/sourceeditor/codemirror/**/*.js
149 devtools/client/sourceeditor/tern/*
150 devtools/client/sourceeditor/test/cm_mode_ruby.js
151 devtools/client/sourceeditor/test/codemirror/*
152 devtools/server/actors/utils/automation-timeline.js
154 # Ignore devtools files testing sourcemaps / code style
155 devtools/client/debugger/test/mochitest/code_*.js
156 devtools/client/framework/test/code_*
157 devtools/client/inspector/markup/test/events_bundle.js
158 devtools/client/netmonitor/test/xhr_bundle.js
159 devtools/client/webconsole/test/mochitest/code_bundle_nosource.js
160 devtools/client/webconsole/test/mochitest/code_bundle_invalidmap.js
161 devtools/server/tests/unit/babel_and_browserify_script_with_source_map.js
162 devtools/server/tests/unit/setBreakpoint*
163 devtools/server/tests/unit/sourcemapped.js
165 # devtools specific format test file
166 devtools/server/tests/unit/xpcshell_debugging_script.js
175 dom/base/test/unit/test_serializers_entities*.js
176 dom/base/test/unit_ipc/**
177 dom/base/test/jsmodules/**
179 dom/broadcastchannel/**
180 dom/browser-element/**
181 dom/cache/test/mochitest/**
182 dom/cache/test/xpcshell/**
197 dom/media/webaudio/**
198 dom/media/webspeech/**
199 dom/messagechannel/**
202 dom/notification/Notification*.*
203 dom/notification/test/browser/**
204 dom/notification/test/mochitest/**
208 dom/plugins/test/mochitest/**
209 dom/plugins/test/unit/**
213 dom/security/test/cors/**
214 dom/security/test/csp/**
215 dom/security/test/general/**
216 dom/security/test/mixedcontentblocker/**
217 dom/security/test/sri/**
218 dom/serviceworkers/**
224 dom/tests/mochitest/**
241 dom/canvas/test/webgl-conf/**
243 dom/media/webaudio/test/blink/**
247 editor/libeditor/tests/browserscope/**
261 layout/mathml/imptests/**
263 # Exclude everything but self-hosted JS
272 js/src/jsapi-tests/binast/**
277 media/webrtc/trunk/**
279 # mobile/android/ exclusions
280 mobile/android/tests/browser/chrome/tp5/**
282 # Uses `#filter substitution`
283 mobile/android/app/mobile.js
284 mobile/android/app/geckoview-prefs.js
287 mobile/android/chrome/content/about.js
289 # Not much JS to lint and non-standard at that
290 mobile/android/installer/
291 mobile/android/locales/
293 # Non-standard `(catch ex if ...)`
294 mobile/android/chrome/content/browser.js
296 # Pre-processed/pref files
297 modules/libpref/greprefs.js
298 modules/libpref/init/all.js
299 modules/libpref/test/unit/*data/**
301 # Only contains non-standard test files.
304 # security/ exclusions (pref files).
305 security/manager/ssl/security-prefs.js
307 # NSS / taskcluster only.
310 # services/ exclusions
312 # Uses `#filter substitution`
313 services/sync/modules/constants.js
314 services/sync/services-sync.js
319 # Remote protocol exclusions
320 testing/marionette/atom.js
321 testing/marionette/legacyaction.js
322 testing/marionette/client
323 testing/marionette/doc
324 testing/marionette/harness
326 # other testing/ exclusions
327 # third party modules
328 testing/mochitest/tests/Harness_sanity/**
329 testing/mochitest/MochiKit/**
330 testing/mochitest/tests/MochiKit-1.4.2/**
331 testing/mochitest/tests/SimpleTest/**
332 testing/modules/ajv-4.1.1.js
333 testing/modules/sinon-2.3.2.js
334 # octothorpe used for pref file comment causes parsing error
335 testing/mozbase/mozprofile/tests/files/prefs_with_comments.js
336 testing/talos/talos/scripts/jszip.min.js
337 testing/talos/talos/startup_test/sessionrestore/profile/sessionstore.js
338 testing/talos/talos/startup_test/sessionrestore/profile-manywindows/sessionstore.js
339 testing/talos/talos/tests/devtools/addon/content/pages/**
340 testing/talos/talos/tests/dromaeo/**
341 testing/talos/talos/tests/v8_7/**
342 testing/talos/talos/tests/kraken/**
343 # Runing Talos may extract data here, see bug 1435677.
344 testing/talos/talos/tests/tp5n/**
346 testing/web-platform/**
347 testing/xpcshell/moz-http2/**
348 testing/xpcshell/node-http2/**
350 # Third party services
351 services/common/kinto-http-client.js
352 services/common/kinto-offline-client.js
354 # toolkit/ exclusions
356 # Intentionally invalid JS
357 toolkit/components/workerloader/tests/moduleF-syntax-error.js
359 # Tests old non-star function generators
360 toolkit/modules/tests/xpcshell/test_task.js
363 browser/components/payments/res/vendor/*
364 toolkit/components/reader/Readability.js
365 toolkit/components/reader/JSDOMParser.js
368 toolkit/components/reader/Readerable.jsm
369 toolkit/content/widgets/wizard.xml
370 toolkit/modules/AppConstants.jsm
371 toolkit/mozapps/update/tests/data/xpcshellConstantsPP.js
374 toolkit/modules/third_party/**