# Always ignore node_modules. **/node_modules/**/*.* # Always ignore crashtests - specially crafted files that originally caused a # crash. **/crashtests/** # Exclude expected objdirs. obj*/** # We ignore all these directories by default, until we get them enabled. # If you are enabling a directory, please add directory specific exclusions # below. docshell/** editor/** extensions/cookie/** extensions/spellcheck/** extensions/universalchardet/** gfx/** image/** intl/** layout/** media/** memory/** modules/** netwerk/** parser/** rdf/** tools/update-packaging/** uriloader/** widget/** # We currently have no js files in these directories, so we ignore them by # default to aid ESLint's performance. build/** config/** db/** embedding/** gradle/** hal/** mfbt/** mozglue/** nsprpub/** other-licenses/** probes/** startupcache/** xpfe/** # These directories only contain crashtests, but we still skip the whole # directory to aid performance. view/** # browser/ exclusions browser/app/** browser/branding/**/firefox-branding.js # Gzipped test file. browser/base/content/test/general/gZipOfflineChild.html browser/base/content/test/urlbar/file_blank_but_not_blank.html # New tab is likely to be replaced soon. browser/base/content/newtab/** # Test files that are really json not js, and don't need to be linted. browser/components/sessionstore/test/unit/data/sessionstore_valid.js browser/components/sessionstore/test/unit/data/sessionstore_invalid.js # generated & special files in cld2 browser/components/translation/cld2/** # Screenshots and Follow-on search are imported as a system add-on and have # their own lint rules currently. browser/extensions/followonsearch/** browser/extensions/screenshots/** browser/extensions/pdfjs/content/build** browser/extensions/pdfjs/content/web** # generated or library files in pocket browser/extensions/pocket/content/panels/js/tmpl.js browser/extensions/pocket/content/panels/js/vendor/** # generated or library files in activity-stream browser/extensions/activity-stream/data/content/activity-stream.bundle.js browser/extensions/activity-stream/vendor/** # The only file in browser/locales/ is pre-processed. browser/locales/** # imported from chromium browser/extensions/mortar/** # Generated data files browser/extensions/formautofill/phonenumberutils/PhoneNumberMetaData.jsm # devtools/ exclusions devtools/client/canvasdebugger/** devtools/client/commandline/** devtools/client/debugger/** devtools/client/framework/** !devtools/client/framework/devtools.js !devtools/client/framework/devtools-browser.js !devtools/client/framework/selection.js !devtools/client/framework/target* !devtools/client/framework/toolbox* devtools/client/inspector/markup/test/doc_markup_events_*.html devtools/client/inspector/rules/test/doc_media_queries.html devtools/client/memory/test/chrome/*.html devtools/client/performance/components/test/test_jit_optimizations_01.html devtools/client/projecteditor/** devtools/client/responsive.html/test/browser/touch.html devtools/client/scratchpad/** devtools/client/shadereditor/** devtools/client/shared/*.jsm devtools/client/shared/components/reps/reps.js devtools/client/shared/components/reps/test/mochitest/*.html !devtools/client/shared/components/reps/test/mochitest/test_reps_infinity.html !devtools/client/shared/components/reps/test/mochitest/test_reps_nan.html !devtools/client/shared/components/reps/test/mochitest/test_reps_promise.html !devtools/client/shared/components/reps/test/mochitest/test_reps_symbol.html !devtools/client/shared/components/reps/test/mochitest/test_reps_text-node.html devtools/client/shared/components/test/mochitest/*.html !devtools/client/shared/components/test/mochitest/test_stack-trace.html devtools/client/shared/shim/test/test_*.html devtools/client/shared/test/browser_toolbar_webconsole_errors_count.html devtools/client/shared/webgl-utils.js devtools/client/shared/widgets/*.jsm devtools/client/storage/test/*.html !devtools/client/storage/test/storage-cookies.html !devtools/client/storage/test/storage-overflow.html !devtools/client/storage/test/storage-search.html !devtools/client/storage/test/storage-unsecured-iframe.html !devtools/client/storage/test/storage-unsecured-iframe-usercontextid.html devtools/client/webaudioeditor/** devtools/client/webconsole/net/** devtools/client/webconsole/new-console-output/test/mochitest/** devtools/client/webconsole/test/** devtools/client/webconsole/hudservice.js devtools/client/webconsole/webconsole-connection-proxy.js devtools/client/webconsole/webconsole.js devtools/client/webide/** !devtools/client/webide/components/webideCli.js devtools/server/tests/browser/storage-*.html !devtools/server/tests/browser/storage-unsecured-iframe.html devtools/server/tests/browser/stylesheets-nested-iframes.html devtools/server/tests/unit/xpcshell_debugging_script.js devtools/client/shared/webpack/shims/test/test_clipboard.html devtools/shared/qrcode/tests/mochitest/test_decode.html devtools/shared/tests/mochitest/*.html devtools/shared/webconsole/test/test_*.html # Ignore devtools preferences files devtools/client/preferences/** devtools/shim/devtools-startup-prefs.js # Ignore devtools third-party libs devtools/shared/jsbeautify/* devtools/shared/acorn/* devtools/shared/gcli/source/* devtools/shared/node-properties/* devtools/shared/pretty-fast/* devtools/shared/sourcemap/* devtools/shared/sprintfjs/* devtools/shared/qrcode/decoder/* devtools/shared/qrcode/encoder/* devtools/client/shared/demangle.js devtools/client/shared/source-map/* devtools/client/shared/vendor/* devtools/client/sourceeditor/codemirror/*.js devtools/client/sourceeditor/codemirror/**/*.js devtools/client/sourceeditor/tern/* devtools/client/sourceeditor/test/cm_mode_ruby.js devtools/client/sourceeditor/test/codemirror/* devtools/client/inspector/markup/test/lib_* devtools/client/jsonview/lib/require.js devtools/server/actors/utils/automation-timeline.js # Ignore devtools files testing sourcemaps / code style devtools/client/debugger/test/mochitest/code_binary_search.js devtools/client/debugger/test/mochitest/code_binary_search_absolute.js devtools/client/debugger/test/mochitest/code_math.min.js devtools/client/debugger/test/mochitest/code_math_bogus_map.js devtools/client/debugger/test/mochitest/code_ugly* devtools/client/debugger/test/mochitest/code_worker-source-map.js devtools/client/framework/test/code_ugly* devtools/client/inspector/markup/test/events_bundle.js devtools/client/netmonitor/test/xhr_bundle.js devtools/client/webconsole/new-console-output/test/mochitest/code_bundle_nosource.js devtools/client/webconsole/new-console-output/test/mochitest/code_bundle_invalidmap.js devtools/server/tests/unit/babel_and_browserify_script_with_source_map.js devtools/server/tests/unit/setBreakpoint* devtools/server/tests/unit/sourcemapped.js # dom/ exclusions dom/abort/** dom/animation/** dom/archivereader/** dom/asmjscache/** dom/audiochannel/** dom/base/** dom/battery/** dom/bindings/** dom/broadcastchannel/** dom/browser-element/** dom/cache/** dom/canvas/** dom/commandhandler/** dom/console/** dom/crypto/** dom/devicestorage/** dom/encoding/** dom/events/** dom/fetch/** dom/file/** dom/filehandle/** dom/filesystem/** dom/flyweb/** dom/gamepad/** dom/geolocation/** dom/grid/** dom/html/** dom/imptests/** dom/interfaces/** dom/ipc/** dom/json/** dom/jsurl/** dom/locales/** dom/manifest/** dom/mathml/** dom/media/** !dom/media/*.js* dom/messagechannel/** dom/network/** dom/notification/** dom/offline/** dom/payments/** dom/performance/** dom/permission/** dom/plugins/** dom/power/** dom/presentation/** dom/promise/** dom/push/** dom/quota/** dom/res/** dom/secureelement/** dom/security/** dom/smil/** dom/storage/** dom/svg/** dom/system/** dom/tests/** dom/time/** dom/u2f/** dom/url/** dom/vr/** dom/webauthn/** dom/webbrowserpersist/** dom/webidl/** dom/websocket/** dom/workers/** dom/worklet/** dom/xbl/** dom/xhr/** dom/xml/** dom/xslt/** dom/xul/** # Third-party dom/media/webvtt/** # Exclude everything but self-hosted JS js/ductwork/** js/examples/** js/ipc/** js/public/** js/xpconnect/** js/src/devtools/** js/src/octane/** js/src/jit-test/** js/src/tests/** js/src/Y.js # mobile/android/ exclusions mobile/android/tests/browser/chrome/tp5/** # Uses `#filter substitution` mobile/android/app/mobile.js mobile/android/chrome/content/healthreport-prefs.js # Uses `#expand` mobile/android/chrome/content/about.js # Not much JS to lint and non-standard at that mobile/android/installer/ mobile/android/locales/ # Non-standard `(catch ex if ...)` mobile/android/chrome/content/browser.js mobile/android/components/Snippets.js # Only contains non-standard test files. python/** # security/ exclusions (pref files). security/manager/ssl/security-prefs.js # NSS / taskcluster only. security/nss/** # services/ exclusions # Uses `#filter substitution` services/sync/modules/constants.js services/sync/services-sync.js # Servo is imported. servo/** # Remote protocol exclusions testing/marionette/test_*.js testing/marionette/atom.js testing/marionette/legacyaction.js testing/marionette/client testing/marionette/doc testing/marionette/harness # other testing/ exclusions testing/mochitest/** # third party modules testing/modules/ajv-4.1.1.js testing/modules/sinon-2.3.2.js # octothorpe used for pref file comment causes parsing error testing/mozbase/mozprofile/tests/files/prefs_with_comments.js testing/talos/talos/scripts/jszip.min.js testing/talos/talos/startup_test/sessionrestore/profile/sessionstore.js testing/talos/talos/startup_test/sessionrestore/profile-manywindows/sessionstore.js testing/talos/talos/tests/canvasmark/** testing/talos/talos/tests/dromaeo/** testing/talos/talos/tests/v8_7/** testing/talos/talos/tests/kraken/** testing/web-platform/** testing/xpcshell/moz-http2/** testing/xpcshell/node-http2/** # Third party services services/common/kinto-http-client.js services/common/kinto-offline-client.js # toolkit/ exclusions # Not part of the default build toolkit/components/help/** # Intentionally invalid JS toolkit/components/workerloader/tests/moduleF-syntax-error.js # Tests old non-star function generators toolkit/modules/tests/xpcshell/test_task.js # External code: toolkit/components/microformats/test/** toolkit/components/microformats/microformat-shiv.js toolkit/components/reader/Readability.js toolkit/components/reader/JSDOMParser.js toolkit/components/payments/res/vendor/* # Uses preprocessing toolkit/content/widgets/wizard.xml toolkit/components/osfile/osfile.jsm toolkit/components/urlformatter/nsURLFormatter.js toolkit/modules/AppConstants.jsm toolkit/mozapps/downloads/nsHelperAppDlg.js toolkit/mozapps/update/tests/data/xpcshellConstantsPP.js # Third party toolkit/modules/third_party/** third_party/**