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.
10 # Exclude expected objdirs.
13 # We ignore all these directories by default, until we get them enabled.
14 # If you are enabling a directory, please add directory specific exclusions
19 extensions/spellcheck/**
20 extensions/universalchardet/**
24 gfx/tests/mochitest/**
28 memory/replace/dmd/test/**
30 netwerk/base/NetUtil.jsm
31 netwerk/cookie/test/browser/**
32 netwerk/cookie/test/unit/**
35 netwerk/test/browser/**
36 netwerk/test/httpserver/**
37 netwerk/test/mochitests/**
42 tools/update-packaging/**
43 uriloader/exthandler/**
44 uriloader/exthandler/tests/mochitest/**
45 widget/headless/tests/**
48 # We currently have no js files in these directories, so we ignore them by
49 # default to aid ESLint's performance.
64 # These directories only contain crashtests, but we still skip the whole
65 # directory to aid performance.
70 browser/branding/**/firefox-branding.js
72 browser/base/content/test/general/gZipOfflineChild.html
73 browser/base/content/test/urlbar/file_blank_but_not_blank.html
74 # Test files that are really json not js, and don't need to be linted.
75 browser/components/sessionstore/test/unit/data/sessionstore_valid.js
76 browser/components/sessionstore/test/unit/data/sessionstore_invalid.js
77 # This file is split into two in order to keep it as a valid json file
78 # for documentation purposes (policies.json) but to be accessed by the
79 # code as a .jsm (schema.jsm)
80 browser/components/enterprisepolicies/schemas/schema.jsm
81 # generated & special files in cld2
82 browser/components/translation/cld2/**
83 # Screenshots is imported as a system add-on and has
84 # their own lint rules currently.
85 browser/extensions/screenshots/**
86 browser/extensions/pdfjs/content/build**
87 browser/extensions/pdfjs/content/web**
88 # generated or library files in pocket
89 browser/extensions/pocket/content/panels/js/tmpl.js
90 browser/extensions/pocket/content/panels/js/vendor/**
91 # Activity Stream has incompatible eslintrc. `npm run lint` from its directory
92 browser/components/newtab/**
93 # The only file in browser/locales/ is pre-processed.
95 # imported from chromium
96 browser/extensions/mortar/**
97 # Generated data files
98 browser/extensions/formautofill/phonenumberutils/PhoneNumberMetaData.jsm
100 # devtools/ exclusions
101 devtools/client/inspector/markup/test/doc_markup_events_*.html
102 devtools/client/inspector/rules/test/doc_media_queries.html
103 devtools/client/performance/components/test/test_jit_optimizations_01.html
104 devtools/client/responsive.html/test/browser/touch.html
105 devtools/client/shared/components/test/mochitest/*.html
106 !devtools/client/shared/components/test/mochitest/test_stack-trace.html
107 devtools/client/shared/shim/test/test_*.html
108 devtools/client/shared/test/browser_toolbar_webconsole_errors_count.html
109 devtools/client/storage/test/*.html
110 !devtools/client/storage/test/storage-cookies.html
111 !devtools/client/storage/test/storage-overflow.html
112 !devtools/client/storage/test/storage-search.html
113 !devtools/client/storage/test/storage-unsecured-iframe.html
114 !devtools/client/storage/test/storage-unsecured-iframe-usercontextid.html
115 devtools/server/tests/browser/storage-*.html
116 !devtools/server/tests/browser/storage-unsecured-iframe.html
117 devtools/server/tests/browser/stylesheets-nested-iframes.html
118 devtools/client/shared/webpack/shims/test/test_clipboard.html
119 devtools/shared/qrcode/tests/mochitest/test_decode.html
120 devtools/shared/tests/mochitest/*.html
121 devtools/shared/webconsole/test/test_*.html
123 # Soon to be removed, the new/ directory is explicitly excluded below due to
124 # also being an imported repository.
125 devtools/client/debugger/**
127 # Ignore devtools imported repositories
128 devtools/client/debugger/new/**
129 devtools/client/shared/components/reps/**
131 # Ignore devtools preferences files
132 devtools/client/preferences/**
133 devtools/client/webide/preferences/**
134 devtools/shared/preferences/**
135 devtools/startup/preferences/devtools-startup.js
137 # Ignore devtools generated code
138 devtools/shared/css/generated/properties-db.js
140 # Ignore devtools third-party libs
141 devtools/shared/jsbeautify/*
142 devtools/shared/acorn/*
143 devtools/shared/gcli/source/*
144 devtools/shared/node-properties/*
145 devtools/shared/pretty-fast/*
146 devtools/shared/sourcemap/*
147 devtools/shared/sprintfjs/*
148 devtools/shared/qrcode/decoder/*
149 devtools/shared/qrcode/encoder/*
150 devtools/client/inspector/markup/test/lib_*
151 devtools/client/jsonview/lib/require.js
152 devtools/client/shared/demangle.js
153 devtools/client/shared/source-map/*
154 devtools/client/shared/vendor/*
155 devtools/client/sourceeditor/codemirror/*.js
156 devtools/client/sourceeditor/codemirror/**/*.js
157 devtools/client/sourceeditor/tern/*
158 devtools/client/sourceeditor/test/cm_mode_ruby.js
159 devtools/client/sourceeditor/test/codemirror/*
160 devtools/server/actors/utils/automation-timeline.js
162 # Ignore devtools files testing sourcemaps / code style
163 devtools/client/debugger/test/mochitest/code_*.js
164 devtools/client/framework/test/code_*
165 devtools/client/inspector/markup/test/events_bundle.js
166 devtools/client/netmonitor/test/xhr_bundle.js
167 devtools/client/webconsole/test/mochitest/code_bundle_nosource.js
168 devtools/client/webconsole/test/mochitest/code_bundle_invalidmap.js
169 devtools/server/tests/unit/babel_and_browserify_script_with_source_map.js
170 devtools/server/tests/unit/setBreakpoint*
171 devtools/server/tests/unit/sourcemapped.js
173 # devtools specific format test file
174 devtools/server/tests/unit/xpcshell_debugging_script.js
185 dom/broadcastchannel/**
186 dom/browser-element/**
187 dom/cache/test/mochitest/**
188 dom/cache/test/xpcshell/**
190 dom/commandhandler/**
216 dom/media/webaudio/**
217 dom/media/webspeech/**
218 dom/messagechannel/**
221 dom/notification/Notification*.*
222 dom/notification/test/browser/**
223 dom/notification/test/unit/**
224 dom/notification/test/mochitest/**
229 dom/plugins/test/mochitest/**
230 dom/plugins/test/unit/**
237 dom/security/test/contentverifier/**
238 dom/security/test/cors/**
239 dom/security/test/csp/**
240 dom/security/test/general/**
241 dom/security/test/hsts/**
242 dom/security/test/mixedcontentblocker/**
243 dom/security/test/sri/**
244 dom/security/test/unit/**
245 dom/serviceworkers/**
253 dom/tests/mochitest/**
260 dom/webbrowserpersist/**
285 # Exclude everything but self-hosted JS
294 js/src/jsapi-tests/binast/**
299 media/webrtc/trunk/**
301 # mobile/android/ exclusions
302 mobile/android/tests/browser/chrome/tp5/**
304 # Uses `#filter substitution`
305 mobile/android/app/mobile.js
306 mobile/android/app/geckoview-prefs.js
309 mobile/android/chrome/content/about.js
311 # Not much JS to lint and non-standard at that
312 mobile/android/installer/
313 mobile/android/locales/
315 # Non-standard `(catch ex if ...)`
316 mobile/android/chrome/content/browser.js
318 # Only contains non-standard test files.
321 # security/ exclusions (pref files).
322 security/manager/ssl/security-prefs.js
324 # NSS / taskcluster only.
327 # services/ exclusions
329 # Uses `#filter substitution`
330 services/sync/modules/constants.js
331 services/sync/services-sync.js
336 # Remote protocol exclusions
337 testing/marionette/atom.js
338 testing/marionette/legacyaction.js
339 testing/marionette/client
340 testing/marionette/doc
341 testing/marionette/harness
343 # other testing/ exclusions
344 # third party modules
345 testing/mochitest/tests/Harness_sanity/**
346 testing/mochitest/MochiKit/**
347 testing/mochitest/tests/MochiKit-1.4.2/**
348 testing/mochitest/tests/SimpleTest/**
349 testing/modules/ajv-4.1.1.js
350 testing/modules/sinon-2.3.2.js
351 # octothorpe used for pref file comment causes parsing error
352 testing/mozbase/mozprofile/tests/files/prefs_with_comments.js
353 testing/talos/talos/scripts/jszip.min.js
354 testing/talos/talos/startup_test/sessionrestore/profile/sessionstore.js
355 testing/talos/talos/startup_test/sessionrestore/profile-manywindows/sessionstore.js
356 testing/talos/talos/tests/canvasmark/**
357 testing/talos/talos/tests/devtools/addon/content/pages/**
358 testing/talos/talos/tests/dromaeo/**
359 testing/talos/talos/tests/v8_7/**
360 testing/talos/talos/tests/kraken/**
361 # Runing Talos may extract data here, see bug 1435677.
362 testing/talos/talos/tests/tp5n/**
364 testing/web-platform/**
365 testing/xpcshell/moz-http2/**
366 testing/xpcshell/node-http2/**
368 # Third party services
369 services/common/kinto-http-client.js
370 services/common/kinto-offline-client.js
372 # toolkit/ exclusions
374 # Not part of the default build
375 toolkit/components/help/**
377 # Intentionally invalid JS
378 toolkit/components/workerloader/tests/moduleF-syntax-error.js
380 # Tests old non-star function generators
381 toolkit/modules/tests/xpcshell/test_task.js
384 browser/components/payments/res/vendor/*
385 toolkit/components/microformats/test/**
386 toolkit/components/microformats/microformat-shiv.js
387 toolkit/components/reader/Readability.js
388 toolkit/components/reader/JSDOMParser.js
391 toolkit/content/widgets/wizard.xml
392 toolkit/modules/AppConstants.jsm
393 toolkit/mozapps/update/tests/data/xpcshellConstantsPP.js
396 toolkit/modules/third_party/**