Bug 1251003 - Change .eslintrc files to .eslintrc.js to avoid obsolete config file format. r=Mossop draft
authorMark Banner <standard8@mozilla.com>
Tue, 18 Oct 2016 08:38:10 +0100
changeset 426265 77ac80c84fc47bc82b2a1cf294bd132b3c7edf8f
parent 426151 56b3f2c6f53e72698fea6c25130efceef2a26548
child 534139 95e504d53491788aa6d5c598791001cceebd0c0d
push id32667
push usermbanner@mozilla.com
push dateTue, 18 Oct 2016 08:30:26 +0000
reviewersMossop
bugs1251003
milestone52.0a1
Bug 1251003 - Change .eslintrc files to .eslintrc.js to avoid obsolete config file format. r=Mossop MozReview-Commit-ID: JrbFxQ5rj6I
.eslintignore
.eslintrc
.eslintrc.js
accessible/.eslintrc
accessible/.eslintrc.js
accessible/tests/browser/.eslintrc
accessible/tests/browser/.eslintrc.js
browser/.eslintrc
browser/.eslintrc.js
browser/base/content/test/alerts/.eslintrc
browser/base/content/test/alerts/.eslintrc.js
browser/base/content/test/chrome/.eslintrc
browser/base/content/test/chrome/.eslintrc.js
browser/base/content/test/general/.eslintrc
browser/base/content/test/general/.eslintrc.js
browser/base/content/test/newtab/.eslintrc
browser/base/content/test/newtab/.eslintrc.js
browser/base/content/test/plugins/.eslintrc
browser/base/content/test/plugins/.eslintrc.js
browser/base/content/test/popupNotifications/.eslintrc
browser/base/content/test/popupNotifications/.eslintrc.js
browser/base/content/test/referrer/.eslintrc
browser/base/content/test/referrer/.eslintrc.js
browser/base/content/test/social/.eslintrc
browser/base/content/test/social/.eslintrc.js
browser/components/contextualidentity/test/browser/.eslintrc
browser/components/contextualidentity/test/browser/.eslintrc.js
browser/components/customizableui/test/.eslintrc
browser/components/customizableui/test/.eslintrc.js
browser/components/dirprovider/tests/unit/.eslintrc
browser/components/dirprovider/tests/unit/.eslintrc.js
browser/components/downloads/test/browser/.eslintrc
browser/components/downloads/test/browser/.eslintrc.js
browser/components/downloads/test/unit/.eslintrc
browser/components/downloads/test/unit/.eslintrc.js
browser/components/extensions/.eslintrc
browser/components/extensions/.eslintrc.js
browser/components/extensions/test/browser/.eslintrc
browser/components/extensions/test/browser/.eslintrc.js
browser/components/extensions/test/xpcshell/.eslintrc
browser/components/extensions/test/xpcshell/.eslintrc.js
browser/components/feeds/test/.eslintrc
browser/components/feeds/test/.eslintrc.js
browser/components/feeds/test/chrome/.eslintrc
browser/components/feeds/test/chrome/.eslintrc.js
browser/components/feeds/test/unit/.eslintrc
browser/components/feeds/test/unit/.eslintrc.js
browser/components/migration/tests/unit/.eslintrc
browser/components/migration/tests/unit/.eslintrc.js
browser/components/newtab/tests/browser/.eslintrc
browser/components/newtab/tests/browser/.eslintrc.js
browser/components/newtab/tests/xpcshell/.eslintrc
browser/components/newtab/tests/xpcshell/.eslintrc.js
browser/components/originattributes/test/browser/.eslintrc
browser/components/originattributes/test/browser/.eslintrc.js
browser/components/places/tests/browser/.eslintrc
browser/components/places/tests/browser/.eslintrc.js
browser/components/places/tests/chrome/.eslintrc
browser/components/places/tests/chrome/.eslintrc.js
browser/components/places/tests/unit/.eslintrc
browser/components/places/tests/unit/.eslintrc.js
browser/components/preferences/in-content/tests/.eslintrc
browser/components/preferences/in-content/tests/.eslintrc.js
browser/components/privatebrowsing/test/browser/.eslintrc
browser/components/privatebrowsing/test/browser/.eslintrc.js
browser/components/safebrowsing/content/test/.eslintrc
browser/components/safebrowsing/content/test/.eslintrc.js
browser/components/search/test/.eslintrc
browser/components/search/test/.eslintrc.js
browser/components/selfsupport/test/.eslintrc
browser/components/selfsupport/test/.eslintrc.js
browser/components/sessionstore/test/.eslintrc
browser/components/sessionstore/test/.eslintrc.js
browser/components/sessionstore/test/unit/.eslintrc
browser/components/sessionstore/test/unit/.eslintrc.js
browser/components/shell/test/.eslintrc
browser/components/shell/test/.eslintrc.js
browser/components/shell/test/unit/.eslintrc
browser/components/shell/test/unit/.eslintrc.js
browser/components/tests/browser/.eslintrc
browser/components/tests/browser/.eslintrc.js
browser/components/translation/test/.eslintrc
browser/components/translation/test/.eslintrc.js
browser/components/translation/test/unit/.eslintrc
browser/components/translation/test/unit/.eslintrc.js
browser/components/uitour/test/.eslintrc
browser/components/uitour/test/.eslintrc.js
browser/experiments/test/xpcshell/.eslintrc
browser/experiments/test/xpcshell/.eslintrc.js
browser/extensions/formautofill/.eslintrc
browser/extensions/formautofill/.eslintrc.js
browser/extensions/formautofill/test/browser/.eslintrc
browser/extensions/formautofill/test/browser/.eslintrc.js
browser/extensions/pdfjs/test/.eslintrc
browser/extensions/pdfjs/test/.eslintrc.js
browser/modules/test/.eslintrc
browser/modules/test/.eslintrc.js
browser/modules/test/unit/social/.eslintrc
browser/modules/test/unit/social/.eslintrc.js
browser/modules/test/xpcshell/.eslintrc
browser/modules/test/xpcshell/.eslintrc.js
devtools/.eslintrc
devtools/.eslintrc.js
devtools/.eslintrc.mochitests
devtools/.eslintrc.mochitests.js
devtools/.eslintrc.xpcshell
devtools/.eslintrc.xpcshell.js
devtools/client/aboutdebugging/test/.eslintrc
devtools/client/aboutdebugging/test/.eslintrc.js
devtools/client/animationinspector/test/.eslintrc
devtools/client/animationinspector/test/.eslintrc.js
devtools/client/animationinspector/test/unit/.eslintrc
devtools/client/animationinspector/test/unit/.eslintrc.js
devtools/client/canvasdebugger/test/.eslintrc
devtools/client/canvasdebugger/test/.eslintrc.js
devtools/client/commandline/test/.eslintrc
devtools/client/commandline/test/.eslintrc.js
devtools/client/debugger/new/test/mochitest/.eslintrc
devtools/client/debugger/new/test/mochitest/.eslintrc.js
devtools/client/debugger/test/.eslintrc
devtools/client/debugger/test/.eslintrc.js
devtools/client/dom/.eslintrc
devtools/client/dom/.eslintrc.js
devtools/client/dom/test/.eslintrc
devtools/client/dom/test/.eslintrc.js
devtools/client/framework/test/.eslintrc
devtools/client/framework/test/.eslintrc.js
devtools/client/inspector/.eslintrc
devtools/client/inspector/.eslintrc.js
devtools/client/inspector/components/test/.eslintrc
devtools/client/inspector/components/test/.eslintrc.js
devtools/client/inspector/computed/test/.eslintrc
devtools/client/inspector/computed/test/.eslintrc.js
devtools/client/inspector/fonts/test/.eslintrc
devtools/client/inspector/fonts/test/.eslintrc.js
devtools/client/inspector/markup/test/.eslintrc
devtools/client/inspector/markup/test/.eslintrc.js
devtools/client/inspector/rules/test/.eslintrc
devtools/client/inspector/rules/test/.eslintrc.js
devtools/client/inspector/shared/test/.eslintrc
devtools/client/inspector/shared/test/.eslintrc.js
devtools/client/inspector/test/.eslintrc
devtools/client/inspector/test/.eslintrc.js
devtools/client/jsonview/.eslintrc
devtools/client/jsonview/.eslintrc.js
devtools/client/jsonview/test/.eslintrc
devtools/client/jsonview/test/.eslintrc.js
devtools/client/memory/test/browser/.eslintrc
devtools/client/memory/test/browser/.eslintrc.js
devtools/client/memory/test/unit/.eslintrc
devtools/client/memory/test/unit/.eslintrc.js
devtools/client/netmonitor/.eslintrc
devtools/client/netmonitor/.eslintrc.js
devtools/client/netmonitor/har/test/.eslintrc
devtools/client/netmonitor/har/test/.eslintrc.js
devtools/client/netmonitor/test/.eslintrc
devtools/client/netmonitor/test/.eslintrc.js
devtools/client/performance/test/.eslintrc
devtools/client/performance/test/.eslintrc.js
devtools/client/performance/test/unit/.eslintrc
devtools/client/performance/test/unit/.eslintrc.js
devtools/client/projecteditor/test/.eslintrc
devtools/client/projecteditor/test/.eslintrc.js
devtools/client/promisedebugger/test/.eslintrc
devtools/client/promisedebugger/test/.eslintrc.js
devtools/client/responsive.html/test/browser/.eslintrc
devtools/client/responsive.html/test/browser/.eslintrc.js
devtools/client/responsive.html/test/unit/.eslintrc
devtools/client/responsive.html/test/unit/.eslintrc.js
devtools/client/responsivedesign/test/.eslintrc
devtools/client/responsivedesign/test/.eslintrc.js
devtools/client/scratchpad/test/.eslintrc
devtools/client/scratchpad/test/.eslintrc.js
devtools/client/shadereditor/test/.eslintrc
devtools/client/shadereditor/test/.eslintrc.js
devtools/client/shared/components/.eslintrc
devtools/client/shared/components/.eslintrc.js
devtools/client/shared/components/test/browser/.eslintrc
devtools/client/shared/components/test/browser/.eslintrc.js
devtools/client/shared/components/test/mochitest/.eslintrc
devtools/client/shared/components/test/mochitest/.eslintrc.js
devtools/client/shared/shim/test/.eslintrc
devtools/client/shared/shim/test/.eslintrc.js
devtools/client/shared/test/.eslintrc
devtools/client/shared/test/.eslintrc.js
devtools/client/shared/test/unit/.eslintrc
devtools/client/shared/test/unit/.eslintrc.js
devtools/client/sourceeditor/.eslintrc
devtools/client/sourceeditor/.eslintrc.js
devtools/client/sourceeditor/test/.eslintrc
devtools/client/sourceeditor/test/.eslintrc.js
devtools/client/storage/test/.eslintrc
devtools/client/storage/test/.eslintrc.js
devtools/client/styleeditor/test/.eslintrc
devtools/client/styleeditor/test/.eslintrc.js
devtools/client/webaudioeditor/test/.eslintrc
devtools/client/webaudioeditor/test/.eslintrc.js
devtools/client/webconsole/net/.eslintrc
devtools/client/webconsole/net/.eslintrc.js
devtools/client/webconsole/net/test/mochitest/.eslintrc
devtools/client/webconsole/net/test/mochitest/.eslintrc.js
devtools/client/webconsole/net/test/unit/.eslintrc
devtools/client/webconsole/net/test/unit/.eslintrc.js
devtools/client/webconsole/new-console-output/test/.eslintrc
devtools/client/webconsole/new-console-output/test/.eslintrc.js
devtools/client/webconsole/test/.eslintrc
devtools/client/webconsole/test/.eslintrc.js
devtools/client/webide/test/.eslintrc
devtools/client/webide/test/.eslintrc.js
devtools/server/tests/browser/.eslintrc
devtools/server/tests/browser/.eslintrc.js
devtools/server/tests/mochitest/.eslintrc
devtools/server/tests/mochitest/.eslintrc.js
devtools/server/tests/unit/.eslintrc
devtools/server/tests/unit/.eslintrc.js
devtools/shared/heapsnapshot/tests/unit/.eslintrc
devtools/shared/heapsnapshot/tests/unit/.eslintrc.js
devtools/shared/platform/content/.eslintrc
devtools/shared/platform/content/.eslintrc.js
devtools/shared/platform/content/test/.eslintrc
devtools/shared/platform/content/test/.eslintrc.js
devtools/shared/security/tests/unit/.eslintrc
devtools/shared/security/tests/unit/.eslintrc.js
devtools/shared/tests/browser/.eslintrc
devtools/shared/tests/browser/.eslintrc.js
devtools/shared/tests/unit/.eslintrc
devtools/shared/tests/unit/.eslintrc.js
devtools/shared/transport/tests/unit/.eslintrc
devtools/shared/transport/tests/unit/.eslintrc.js
devtools/shared/webconsole/test/unit/.eslintrc
devtools/shared/webconsole/test/unit/.eslintrc.js
devtools/shared/worker/tests/browser/.eslintrc
devtools/shared/worker/tests/browser/.eslintrc.js
mobile/android/components/extensions/.eslintrc
mobile/android/components/extensions/.eslintrc.js
mobile/android/components/extensions/test/mochitest/.eslintrc
mobile/android/components/extensions/test/mochitest/.eslintrc.js
security/manager/.eslintrc.js
security/manager/.eslintrc.json
security/manager/ssl/tests/.eslintrc.js
security/manager/ssl/tests/.eslintrc.json
security/manager/ssl/tests/mochitest/browser/.eslintrc.js
security/manager/ssl/tests/mochitest/browser/.eslintrc.json
security/manager/ssl/tests/mochitest/mixedcontent/.eslintrc.js
security/manager/ssl/tests/mochitest/mixedcontent/.eslintrc.json
security/manager/ssl/tests/mochitest/stricttransportsecurity/.eslintrc.js
security/manager/ssl/tests/mochitest/stricttransportsecurity/.eslintrc.json
security/manager/ssl/tests/unit/.eslintrc.js
security/manager/ssl/tests/unit/.eslintrc.json
security/manager/tools/.eslintrc.js
security/manager/tools/.eslintrc.json
storage/.eslintrc
storage/.eslintrc.js
testing/mochitest/browser.eslintrc
testing/mochitest/browser.eslintrc.js
testing/mochitest/chrome.eslintrc
testing/mochitest/chrome.eslintrc.js
testing/mochitest/mochitest.eslintrc
testing/mochitest/mochitest.eslintrc.js
testing/xpcshell/xpcshell.eslintrc
testing/xpcshell/xpcshell.eslintrc.js
toolkit/.eslintrc
toolkit/.eslintrc.js
toolkit/components/aboutmemory/tests/.eslintrc
toolkit/components/aboutmemory/tests/.eslintrc.js
toolkit/components/aboutperformance/tests/browser/.eslintrc
toolkit/components/aboutperformance/tests/browser/.eslintrc.js
toolkit/components/addoncompat/tests/browser/.eslintrc
toolkit/components/addoncompat/tests/browser/.eslintrc.js
toolkit/components/alerts/test/.eslintrc
toolkit/components/alerts/test/.eslintrc.js
toolkit/components/asyncshutdown/tests/xpcshell/.eslintrc
toolkit/components/asyncshutdown/tests/xpcshell/.eslintrc.js
toolkit/components/autocomplete/tests/unit/.eslintrc
toolkit/components/autocomplete/tests/unit/.eslintrc.js
toolkit/components/captivedetect/test/unit/.eslintrc
toolkit/components/captivedetect/test/unit/.eslintrc.js
toolkit/components/commandlines/test/unit/.eslintrc
toolkit/components/commandlines/test/unit/.eslintrc.js
toolkit/components/commandlines/test/unit_unix/.eslintrc
toolkit/components/commandlines/test/unit_unix/.eslintrc.js
toolkit/components/commandlines/test/unit_win/.eslintrc
toolkit/components/commandlines/test/unit_win/.eslintrc.js
toolkit/components/contentprefs/tests/mochitest/.eslintrc
toolkit/components/contentprefs/tests/mochitest/.eslintrc.js
toolkit/components/contentprefs/tests/unit/.eslintrc
toolkit/components/contentprefs/tests/unit/.eslintrc.js
toolkit/components/contentprefs/tests/unit_cps2/.eslintrc
toolkit/components/contentprefs/tests/unit_cps2/.eslintrc.js
toolkit/components/crashes/tests/xpcshell/.eslintrc
toolkit/components/crashes/tests/xpcshell/.eslintrc.js
toolkit/components/crashmonitor/test/unit/.eslintrc
toolkit/components/crashmonitor/test/unit/.eslintrc.js
toolkit/components/ctypes/tests/chrome/.eslintrc
toolkit/components/ctypes/tests/chrome/.eslintrc.js
toolkit/components/ctypes/tests/unit/.eslintrc
toolkit/components/ctypes/tests/unit/.eslintrc.js
toolkit/components/downloads/test/unit/.eslintrc
toolkit/components/downloads/test/unit/.eslintrc.js
toolkit/components/extensions/.eslintrc
toolkit/components/extensions/.eslintrc.js
toolkit/components/extensions/test/mochitest/.eslintrc
toolkit/components/extensions/test/mochitest/.eslintrc.js
toolkit/components/extensions/test/xpcshell/.eslintrc
toolkit/components/extensions/test/xpcshell/.eslintrc.js
toolkit/components/feeds/test/.eslintrc
toolkit/components/feeds/test/.eslintrc.js
toolkit/components/filepicker/test/unit/.eslintrc
toolkit/components/filepicker/test/unit/.eslintrc.js
toolkit/components/filewatcher/tests/xpcshell/.eslintrc
toolkit/components/filewatcher/tests/xpcshell/.eslintrc.js
toolkit/components/formautofill/test/browser/.eslintrc
toolkit/components/formautofill/test/browser/.eslintrc.js
toolkit/components/formautofill/test/chrome/.eslintrc
toolkit/components/formautofill/test/chrome/.eslintrc.js
toolkit/components/formautofill/test/xpcshell/.eslintrc
toolkit/components/formautofill/test/xpcshell/.eslintrc.js
toolkit/components/jsdownloads/test/browser/.eslintrc
toolkit/components/jsdownloads/test/browser/.eslintrc.js
toolkit/components/jsdownloads/test/data/.eslintrc
toolkit/components/jsdownloads/test/data/.eslintrc.js
toolkit/components/jsdownloads/test/unit/.eslintrc
toolkit/components/jsdownloads/test/unit/.eslintrc.js
toolkit/components/lz4/tests/xpcshell/.eslintrc
toolkit/components/lz4/tests/xpcshell/.eslintrc.js
toolkit/components/mediasniffer/test/unit/.eslintrc
toolkit/components/mediasniffer/test/unit/.eslintrc.js
toolkit/components/narrate/.eslintrc
toolkit/components/narrate/.eslintrc.js
toolkit/components/narrate/test/.eslintrc
toolkit/components/narrate/test/.eslintrc.js
toolkit/components/osfile/tests/mochi/.eslintrc
toolkit/components/osfile/tests/mochi/.eslintrc.js
toolkit/components/osfile/tests/xpcshell/.eslintrc
toolkit/components/osfile/tests/xpcshell/.eslintrc.js
toolkit/components/passwordmgr/.eslintrc
toolkit/components/passwordmgr/.eslintrc.js
toolkit/components/passwordmgr/test/.eslintrc
toolkit/components/passwordmgr/test/.eslintrc.js
toolkit/components/passwordmgr/test/browser/.eslintrc
toolkit/components/passwordmgr/test/browser/.eslintrc.js
toolkit/components/passwordmgr/test/unit/.eslintrc
toolkit/components/passwordmgr/test/unit/.eslintrc.js
toolkit/components/perf/.eslintrc
toolkit/components/perf/.eslintrc.js
toolkit/components/perfmonitoring/tests/browser/.eslintrc
toolkit/components/perfmonitoring/tests/browser/.eslintrc.js
toolkit/components/places/tests/.eslintrc
toolkit/components/places/tests/.eslintrc.js
toolkit/components/places/tests/bookmarks/.eslintrc
toolkit/components/places/tests/bookmarks/.eslintrc.js
toolkit/components/places/tests/browser/.eslintrc
toolkit/components/places/tests/browser/.eslintrc.js
toolkit/components/places/tests/chrome/.eslintrc
toolkit/components/places/tests/chrome/.eslintrc.js
toolkit/components/places/tests/expiration/.eslintrc
toolkit/components/places/tests/expiration/.eslintrc.js
toolkit/components/places/tests/favicons/.eslintrc
toolkit/components/places/tests/favicons/.eslintrc.js
toolkit/components/places/tests/history/.eslintrc
toolkit/components/places/tests/history/.eslintrc.js
toolkit/components/places/tests/migration/.eslintrc
toolkit/components/places/tests/migration/.eslintrc.js
toolkit/components/places/tests/network/.eslintrc
toolkit/components/places/tests/network/.eslintrc.js
toolkit/components/places/tests/queries/.eslintrc
toolkit/components/places/tests/queries/.eslintrc.js
toolkit/components/places/tests/unifiedcomplete/.eslintrc
toolkit/components/places/tests/unifiedcomplete/.eslintrc.js
toolkit/components/places/tests/unit/.eslintrc
toolkit/components/places/tests/unit/.eslintrc.js
toolkit/components/promiseworker/tests/xpcshell/.eslintrc
toolkit/components/promiseworker/tests/xpcshell/.eslintrc.js
toolkit/components/prompts/test/.eslintrc
toolkit/components/prompts/test/.eslintrc.js
toolkit/components/remotebrowserutils/tests/browser/.eslintrc
toolkit/components/remotebrowserutils/tests/browser/.eslintrc.js
toolkit/components/satchel/test/.eslintrc
toolkit/components/satchel/test/.eslintrc.js
toolkit/components/satchel/test/browser/.eslintrc
toolkit/components/satchel/test/browser/.eslintrc.js
toolkit/components/satchel/test/unit/.eslintrc
toolkit/components/satchel/test/unit/.eslintrc.js
toolkit/components/search/tests/xpcshell/.eslintrc
toolkit/components/search/tests/xpcshell/.eslintrc.js
toolkit/components/social/test/xpcshell/.eslintrc
toolkit/components/social/test/xpcshell/.eslintrc.js
toolkit/components/sqlite/tests/xpcshell/.eslintrc
toolkit/components/sqlite/tests/xpcshell/.eslintrc.js
toolkit/components/startup/tests/browser/.eslintrc
toolkit/components/startup/tests/browser/.eslintrc.js
toolkit/components/startup/tests/unit/.eslintrc
toolkit/components/startup/tests/unit/.eslintrc.js
toolkit/components/telemetry/tests/unit/.eslintrc
toolkit/components/telemetry/tests/unit/.eslintrc.js
toolkit/components/terminator/tests/xpcshell/.eslintrc
toolkit/components/terminator/tests/xpcshell/.eslintrc.js
toolkit/components/thumbnails/test/.eslintrc
toolkit/components/thumbnails/test/.eslintrc.js
toolkit/components/timermanager/tests/unit/.eslintrc
toolkit/components/timermanager/tests/unit/.eslintrc.js
toolkit/components/url-classifier/tests/mochitest/.eslintrc
toolkit/components/url-classifier/tests/mochitest/.eslintrc.js
toolkit/components/url-classifier/tests/unit/.eslintrc
toolkit/components/url-classifier/tests/unit/.eslintrc.js
toolkit/components/urlformatter/tests/unit/.eslintrc
toolkit/components/urlformatter/tests/unit/.eslintrc.js
toolkit/components/viewsource/test/.eslintrc
toolkit/components/viewsource/test/.eslintrc.js
toolkit/components/viewsource/test/browser/.eslintrc
toolkit/components/viewsource/test/browser/.eslintrc.js
toolkit/components/workerloader/tests/.eslintrc
toolkit/components/workerloader/tests/.eslintrc.js
toolkit/components/xulstore/tests/chrome/.eslintrc
toolkit/components/xulstore/tests/chrome/.eslintrc.js
toolkit/components/xulstore/tests/xpcshell/.eslintrc
toolkit/components/xulstore/tests/xpcshell/.eslintrc.js
toolkit/content/tests/browser/.eslintrc
toolkit/content/tests/browser/.eslintrc.js
toolkit/content/tests/chrome/.eslintrc
toolkit/content/tests/chrome/.eslintrc.js
toolkit/content/tests/unit/.eslintrc
toolkit/content/tests/unit/.eslintrc.js
toolkit/content/tests/widgets/.eslintrc
toolkit/content/tests/widgets/.eslintrc.js
toolkit/crashreporter/test/browser/.eslintrc
toolkit/crashreporter/test/browser/.eslintrc.js
toolkit/crashreporter/test/unit/.eslintrc
toolkit/crashreporter/test/unit/.eslintrc.js
toolkit/crashreporter/test/unit_ipc/.eslintrc
toolkit/crashreporter/test/unit_ipc/.eslintrc.js
toolkit/forgetaboutsite/test/browser/.eslintrc
toolkit/forgetaboutsite/test/browser/.eslintrc.js
toolkit/forgetaboutsite/test/unit/.eslintrc
toolkit/forgetaboutsite/test/unit/.eslintrc.js
toolkit/identity/tests/chrome/.eslintrc
toolkit/identity/tests/chrome/.eslintrc.js
toolkit/identity/tests/unit/.eslintrc
toolkit/identity/tests/unit/.eslintrc.js
toolkit/modules/addons/.eslintrc
toolkit/modules/addons/.eslintrc.js
toolkit/modules/subprocess/.eslintrc
toolkit/modules/subprocess/.eslintrc.js
toolkit/modules/subprocess/test/xpcshell/.eslintrc
toolkit/modules/subprocess/test/xpcshell/.eslintrc.js
toolkit/modules/tests/browser/.eslintrc
toolkit/modules/tests/browser/.eslintrc.js
toolkit/modules/tests/chrome/.eslintrc
toolkit/modules/tests/chrome/.eslintrc.js
toolkit/modules/tests/mochitest/.eslintrc
toolkit/modules/tests/mochitest/.eslintrc.js
toolkit/modules/tests/xpcshell/.eslintrc
toolkit/modules/tests/xpcshell/.eslintrc.js
toolkit/mozapps/downloads/tests/chrome/.eslintrc
toolkit/mozapps/downloads/tests/chrome/.eslintrc.js
toolkit/mozapps/downloads/tests/unit/.eslintrc
toolkit/mozapps/downloads/tests/unit/.eslintrc.js
toolkit/mozapps/extensions/.eslintrc
toolkit/mozapps/extensions/.eslintrc.js
toolkit/mozapps/extensions/test/browser/.eslintrc
toolkit/mozapps/extensions/test/browser/.eslintrc.js
toolkit/mozapps/extensions/test/mochitest/.eslintrc
toolkit/mozapps/extensions/test/mochitest/.eslintrc.js
toolkit/mozapps/extensions/test/xpcshell/.eslintrc
toolkit/mozapps/extensions/test/xpcshell/.eslintrc.js
toolkit/mozapps/extensions/test/xpinstall/.eslintrc
toolkit/mozapps/extensions/test/xpinstall/.eslintrc.js
toolkit/mozapps/update/tests/chrome/.eslintrc
toolkit/mozapps/update/tests/chrome/.eslintrc.js
toolkit/mozapps/update/tests/unit_aus_update/.eslintrc
toolkit/mozapps/update/tests/unit_aus_update/.eslintrc.js
toolkit/mozapps/update/tests/unit_base_updater/.eslintrc
toolkit/mozapps/update/tests/unit_base_updater/.eslintrc.js
toolkit/mozapps/update/tests/unit_service_updater/.eslintrc
toolkit/mozapps/update/tests/unit_service_updater/.eslintrc.js
toolkit/profile/test/.eslintrc
toolkit/profile/test/.eslintrc.js
toolkit/themes/osx/mochitests/.eslintrc
toolkit/themes/osx/mochitests/.eslintrc.js
toolkit/xre/test/.eslintrc
toolkit/xre/test/.eslintrc.js
tools/lint/eslint/eslint-plugin-mozilla/lib/rules/.eslintrc
tools/lint/eslint/eslint-plugin-mozilla/lib/rules/.eslintrc.js
--- a/.eslintignore
+++ b/.eslintignore
@@ -1,8 +1,11 @@
+# Allow linting of .eslintrc.js files.
+!**/.eslintrc.js
+
 # Always ignore node_modules.
 **/node_modules/**/*.*
 
 # 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
rename from .eslintrc
rename to .eslintrc.js
--- a/.eslintrc
+++ b/.eslintrc.js
@@ -1,12 +1,14 @@
-{
+"use strict";
+
+module.exports = {
   // When adding items to this file please check for effects on sub-directories.
   "plugins": [
     "mozilla"
   ],
   "rules": {
     "mozilla/import-globals": 1,
   },
   "env": {
     "es6": true
   },
-}
+};
rename from accessible/.eslintrc
rename to accessible/.eslintrc.js
--- a/accessible/.eslintrc
+++ b/accessible/.eslintrc.js
@@ -1,15 +1,17 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../.eslintrc"
+    "../.eslintrc.js"
   ],
   "globals": {
     "Cc": true,
     "Ci": true,
     "Components": true,
     "console": true,
     "Cu": true,
     "dump": true,
     "Services": true,
     "XPCOMUtils": true
   }
-}
+};
rename from accessible/tests/browser/.eslintrc
rename to accessible/tests/browser/.eslintrc.js
--- a/accessible/tests/browser/.eslintrc
+++ b/accessible/tests/browser/.eslintrc.js
@@ -1,11 +1,13 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "extends": [
-    "../../../testing/mochitest/browser.eslintrc"
+    "../../../testing/mochitest/browser.eslintrc.js"
   ],
   // All globals made available in the test environment.
   "globals": {
     // Content scripts have global 'content' object
     "content": true,
 
     "add_task": true,
 
@@ -41,17 +43,17 @@
     "loadFrameScripts": true,
     "Logger": true,
     "MOCHITESTS_DIR": true,
     "waitForEvent": true,
     "waitForMultipleEvents": true,
     "invokeSetAttribute": true,
     "invokeSetStyle": true,
     "invokeFocus": true,
-    "findAccessibleChildByID": true,
+    "findAccessibleChildByID": true
   },
   "rules": {
     "mozilla/mark-test-function-used": 1,
     "mozilla/no-aArgs": 1,
     "mozilla/no-cpows-in-tests": 1,
     "mozilla/reject-importGlobalProperties": 1,
     "mozilla/var-only-at-top-level": 1,
 
@@ -207,11 +209,11 @@
     "no-octal-escape": 0,
     "no-undef-init": 2,
     "no-unexpected-multiline": 2,
     "object-curly-spacing": 0,
     "no-unused-expressions": 0,
     "no-void": 0,
     "no-wrap-func": 0,
     "operator-assignment": 0,
-    "operator-linebreak": [2, "after"],
+    "operator-linebreak": [2, "after"]
   }
-}
+};
rename from browser/.eslintrc
rename to browser/.eslintrc.js
--- a/browser/.eslintrc
+++ b/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../toolkit/.eslintrc"
+    "../toolkit/.eslintrc.js"
   ],
-}
+};
rename from browser/base/content/test/alerts/.eslintrc
rename to browser/base/content/test/alerts/.eslintrc.js
--- a/browser/base/content/test/alerts/.eslintrc
+++ b/browser/base/content/test/alerts/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/base/content/test/chrome/.eslintrc
rename to browser/base/content/test/chrome/.eslintrc.js
--- a/browser/base/content/test/chrome/.eslintrc
+++ b/browser/base/content/test/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from browser/base/content/test/general/.eslintrc
rename to browser/base/content/test/general/.eslintrc.js
--- a/browser/base/content/test/general/.eslintrc
+++ b/browser/base/content/test/general/.eslintrc.js
@@ -1,6 +1,8 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc",
-    "../../../../../testing/mochitest/mochitest.eslintrc",
+    "../../../../../testing/mochitest/browser.eslintrc.js",
+    "../../../../../testing/mochitest/mochitest.eslintrc.js",
   ]
-}
+};
rename from browser/base/content/test/newtab/.eslintrc
rename to browser/base/content/test/newtab/.eslintrc.js
--- a/browser/base/content/test/newtab/.eslintrc
+++ b/browser/base/content/test/newtab/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/base/content/test/plugins/.eslintrc
rename to browser/base/content/test/plugins/.eslintrc.js
--- a/browser/base/content/test/plugins/.eslintrc
+++ b/browser/base/content/test/plugins/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/base/content/test/popupNotifications/.eslintrc
rename to browser/base/content/test/popupNotifications/.eslintrc.js
--- a/browser/base/content/test/popupNotifications/.eslintrc
+++ b/browser/base/content/test/popupNotifications/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/base/content/test/referrer/.eslintrc
rename to browser/base/content/test/referrer/.eslintrc.js
--- a/browser/base/content/test/referrer/.eslintrc
+++ b/browser/base/content/test/referrer/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/base/content/test/social/.eslintrc
rename to browser/base/content/test/social/.eslintrc.js
--- a/browser/base/content/test/social/.eslintrc
+++ b/browser/base/content/test/social/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/contextualidentity/test/browser/.eslintrc
rename to browser/components/contextualidentity/test/browser/.eslintrc.js
--- a/browser/components/contextualidentity/test/browser/.eslintrc
+++ b/browser/components/contextualidentity/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/customizableui/test/.eslintrc
rename to browser/components/customizableui/test/.eslintrc.js
--- a/browser/components/customizableui/test/.eslintrc
+++ b/browser/components/customizableui/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/dirprovider/tests/unit/.eslintrc
rename to browser/components/dirprovider/tests/unit/.eslintrc.js
--- a/browser/components/dirprovider/tests/unit/.eslintrc
+++ b/browser/components/dirprovider/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/components/downloads/test/browser/.eslintrc
rename to browser/components/downloads/test/browser/.eslintrc.js
--- a/browser/components/downloads/test/browser/.eslintrc
+++ b/browser/components/downloads/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/downloads/test/unit/.eslintrc
rename to browser/components/downloads/test/unit/.eslintrc.js
--- a/browser/components/downloads/test/unit/.eslintrc
+++ b/browser/components/downloads/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/components/extensions/.eslintrc
rename to browser/components/extensions/.eslintrc.js
--- a/browser/components/extensions/.eslintrc
+++ b/browser/components/extensions/.eslintrc.js
@@ -1,10 +1,12 @@
-{
-  "extends": "../../../toolkit/components/extensions/.eslintrc",
+"use strict";
+
+module.exports = {  // eslint-disable-line no-undef
+  "extends": "../../../toolkit/components/extensions/.eslintrc.js",
 
   "globals": {
     "AllWindowEvents": true,
     "browserActionFor": true,
     "currentWindow": true,
     "EventEmitter": true,
     "getCookieStoreIdForTab": true,
     "IconDetails": true,
@@ -12,11 +14,9 @@
     "pageActionFor": true,
     "PanelPopup": true,
     "TabContext": true,
     "ViewPopup": true,
     "WindowEventManager": true,
     "WindowListManager": true,
     "WindowManager": true,
   },
-}
-
-
+};
rename from browser/components/extensions/test/browser/.eslintrc
rename to browser/components/extensions/test/browser/.eslintrc.js
--- a/browser/components/extensions/test/browser/.eslintrc
+++ b/browser/components/extensions/test/browser/.eslintrc.js
@@ -1,10 +1,12 @@
-{
-  "extends": "../../../../../testing/mochitest/browser.eslintrc",
+"use strict";
+
+module.exports = {  // eslint-disable-line no-undef
+  "extends": "../../../../../testing/mochitest/browser.eslintrc.js",
 
   "env": {
     "webextensions": true,
   },
 
   "globals": {
     "NetUtil": true,
     "XPCOMUtils": true,
@@ -21,10 +23,10 @@
     "clickPageAction": true,
     "closeContextMenu": true,
     "closeExtensionContextMenu": true,
     "focusWindow": true,
     "makeWidgetId": true,
     "openContextMenu": true,
     "openExtensionContextMenu": true,
     "CustomizableUI": true,
-  }
-}
+  },
+};
rename from browser/components/extensions/test/xpcshell/.eslintrc
rename to browser/components/extensions/test/xpcshell/.eslintrc.js
--- a/browser/components/extensions/test/xpcshell/.eslintrc
+++ b/browser/components/extensions/test/xpcshell/.eslintrc.js
@@ -1,7 +1,9 @@
-{
-  "extends": "../../../../../testing/xpcshell/xpcshell.eslintrc",
+"use strict";
+
+module.exports = {  // eslint-disable-line no-undef
+  "extends": "../../../../../testing/xpcshell/xpcshell.eslintrc.js",
 
   "globals": {
     "browser": false,
   },
-}
+};
rename from browser/components/feeds/test/.eslintrc
rename to browser/components/feeds/test/.eslintrc.js
--- a/browser/components/feeds/test/.eslintrc
+++ b/browser/components/feeds/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/mochitest.eslintrc"
+    "../../../../testing/mochitest/mochitest.eslintrc.js"
   ]
-}
+};
rename from browser/components/feeds/test/chrome/.eslintrc
rename to browser/components/feeds/test/chrome/.eslintrc.js
--- a/browser/components/feeds/test/chrome/.eslintrc
+++ b/browser/components/feeds/test/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from browser/components/feeds/test/unit/.eslintrc
rename to browser/components/feeds/test/unit/.eslintrc.js
--- a/browser/components/feeds/test/unit/.eslintrc
+++ b/browser/components/feeds/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/components/migration/tests/unit/.eslintrc
rename to browser/components/migration/tests/unit/.eslintrc.js
--- a/browser/components/migration/tests/unit/.eslintrc
+++ b/browser/components/migration/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/components/newtab/tests/browser/.eslintrc
rename to browser/components/newtab/tests/browser/.eslintrc.js
--- a/browser/components/newtab/tests/browser/.eslintrc
+++ b/browser/components/newtab/tests/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/newtab/tests/xpcshell/.eslintrc
rename to browser/components/newtab/tests/xpcshell/.eslintrc.js
--- a/browser/components/newtab/tests/xpcshell/.eslintrc
+++ b/browser/components/newtab/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/components/originattributes/test/browser/.eslintrc
rename to browser/components/originattributes/test/browser/.eslintrc.js
--- a/browser/components/originattributes/test/browser/.eslintrc
+++ b/browser/components/originattributes/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/places/tests/browser/.eslintrc
rename to browser/components/places/tests/browser/.eslintrc.js
--- a/browser/components/places/tests/browser/.eslintrc
+++ b/browser/components/places/tests/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/places/tests/chrome/.eslintrc
rename to browser/components/places/tests/chrome/.eslintrc.js
--- a/browser/components/places/tests/chrome/.eslintrc
+++ b/browser/components/places/tests/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from browser/components/places/tests/unit/.eslintrc
rename to browser/components/places/tests/unit/.eslintrc.js
--- a/browser/components/places/tests/unit/.eslintrc
+++ b/browser/components/places/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/components/preferences/in-content/tests/.eslintrc
rename to browser/components/preferences/in-content/tests/.eslintrc.js
--- a/browser/components/preferences/in-content/tests/.eslintrc
+++ b/browser/components/preferences/in-content/tests/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/privatebrowsing/test/browser/.eslintrc
rename to browser/components/privatebrowsing/test/browser/.eslintrc.js
--- a/browser/components/privatebrowsing/test/browser/.eslintrc
+++ b/browser/components/privatebrowsing/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/safebrowsing/content/test/.eslintrc
rename to browser/components/safebrowsing/content/test/.eslintrc.js
--- a/browser/components/safebrowsing/content/test/.eslintrc
+++ b/browser/components/safebrowsing/content/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/search/test/.eslintrc
rename to browser/components/search/test/.eslintrc.js
--- a/browser/components/search/test/.eslintrc
+++ b/browser/components/search/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/selfsupport/test/.eslintrc
rename to browser/components/selfsupport/test/.eslintrc.js
--- a/browser/components/selfsupport/test/.eslintrc
+++ b/browser/components/selfsupport/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/sessionstore/test/.eslintrc
rename to browser/components/sessionstore/test/.eslintrc.js
--- a/browser/components/sessionstore/test/.eslintrc
+++ b/browser/components/sessionstore/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/sessionstore/test/unit/.eslintrc
rename to browser/components/sessionstore/test/unit/.eslintrc.js
--- a/browser/components/sessionstore/test/unit/.eslintrc
+++ b/browser/components/sessionstore/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/components/shell/test/.eslintrc
rename to browser/components/shell/test/.eslintrc.js
--- a/browser/components/shell/test/.eslintrc
+++ b/browser/components/shell/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/shell/test/unit/.eslintrc
rename to browser/components/shell/test/unit/.eslintrc.js
--- a/browser/components/shell/test/unit/.eslintrc
+++ b/browser/components/shell/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/components/tests/browser/.eslintrc
rename to browser/components/tests/browser/.eslintrc.js
--- a/browser/components/tests/browser/.eslintrc
+++ b/browser/components/tests/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/translation/test/.eslintrc
rename to browser/components/translation/test/.eslintrc.js
--- a/browser/components/translation/test/.eslintrc
+++ b/browser/components/translation/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/components/translation/test/unit/.eslintrc
rename to browser/components/translation/test/unit/.eslintrc.js
--- a/browser/components/translation/test/unit/.eslintrc
+++ b/browser/components/translation/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/components/uitour/test/.eslintrc
rename to browser/components/uitour/test/.eslintrc.js
--- a/browser/components/uitour/test/.eslintrc
+++ b/browser/components/uitour/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/experiments/test/xpcshell/.eslintrc
rename to browser/experiments/test/xpcshell/.eslintrc.js
--- a/browser/experiments/test/xpcshell/.eslintrc
+++ b/browser/experiments/test/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/extensions/formautofill/.eslintrc
rename to browser/extensions/formautofill/.eslintrc.js
--- a/browser/extensions/formautofill/.eslintrc
+++ b/browser/extensions/formautofill/.eslintrc.js
@@ -1,10 +1,12 @@
-{
-  "extends": "../../.eslintrc",
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../.eslintrc.js",
 
   "globals": {
     "Components": true,
     "dump": true,
     "TextDecoder": false,
     "TextEncoder": false,
   },
 
@@ -328,17 +330,17 @@
 
     // Allow the use of leading or trailing decimal points in numeric literals.
     "no-floating-decimal": 0,
 
     // Allow comments inline after code.
     "no-inline-comments": 0,
 
     // Disallow use of labels for anything other then loops and switches.
-    "no-labels": [2, { "allowLoop": true }],
+    "no-labels": [2, {"allowLoop": true}],
 
     // Disallow use of multiline strings (use template strings instead).
     "no-multi-str": 1,
 
     // Disallow multiple empty lines.
     "no-multiple-empty-lines": [1, {"max": 2}],
 
     // Allow reassignment of function parameters.
@@ -464,10 +466,10 @@
     // Disallow usage of __iterator__ property
     "no-iterator": 2,
 
     // Disallow labels that share a name with a variable
     "no-label-var": 2,
 
     // Disallow creating new instances of String, Number, and Boolean
     "no-new-wrappers": 2,
-  }
-}
+  },
+};
rename from browser/extensions/formautofill/test/browser/.eslintrc
rename to browser/extensions/formautofill/test/browser/.eslintrc.js
--- a/browser/extensions/formautofill/test/browser/.eslintrc
+++ b/browser/extensions/formautofill/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
-  ]
-}
+    "../../../../../testing/mochitest/browser.eslintrc.js",
+  ],
+};
rename from browser/extensions/pdfjs/test/.eslintrc
rename to browser/extensions/pdfjs/test/.eslintrc.js
--- a/browser/extensions/pdfjs/test/.eslintrc
+++ b/browser/extensions/pdfjs/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/modules/test/.eslintrc
rename to browser/modules/test/.eslintrc.js
--- a/browser/modules/test/.eslintrc
+++ b/browser/modules/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../testing/mochitest/browser.eslintrc"
+    "../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from browser/modules/test/unit/social/.eslintrc
rename to browser/modules/test/unit/social/.eslintrc.js
--- a/browser/modules/test/unit/social/.eslintrc
+++ b/browser/modules/test/unit/social/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from browser/modules/test/xpcshell/.eslintrc
rename to browser/modules/test/xpcshell/.eslintrc.js
--- a/browser/modules/test/xpcshell/.eslintrc
+++ b/browser/modules/test/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from devtools/.eslintrc
rename to devtools/.eslintrc.js
--- a/devtools/.eslintrc
+++ b/devtools/.eslintrc.js
@@ -1,9 +1,11 @@
-{
+"use strict";
+
+module.exports = {
   "plugins": [
     "react"
   ],
   "globals": {
     "atob": true,
     "btoa": true,
     "Components": true,
     "CSSRule": true,
@@ -146,17 +148,20 @@
     // Enforces spacing between keys and values in object literal properties.
     "key-spacing": [2, {"beforeColon": false, "afterColon": true}],
     // Allow mixed 'LF' and 'CRLF' as linebreaks.
     "linebreak-style": 0,
     // Don't enforce the maximum depth that blocks can be nested. The complexity
     // rule is a better rule to check this.
     "max-depth": 0,
     // Maximum length of a line.
-    "max-len": [2, 90, 2, {"ignoreUrls": true, "ignorePattern": "data:image\/|\\s*require\\s*\\(|^\\s*loader\\.lazy|-\\*-"}],
+    "max-len": [2, 90, 2, {
+      "ignoreUrls": true,
+      "ignorePattern": "data:image\/|\\s*require\\s*\\(|^\\s*loader\\.lazy|-\\*-"
+    }],
     // Maximum depth callbacks can be nested.
     "max-nested-callbacks": [2, 3],
     // Don't limit the number of parameters that can be used in a function.
     "max-params": 0,
     // Don't limit the maximum number of statement allowed in a function. We
     // already have the complexity rule that's a better measurement.
     "max-statements": 0,
     // Require a capital letter for constructors, only check if all new
@@ -317,17 +322,18 @@
     "no-underscore-dangle": 0,
     // Allow use of undefined variable.
     "no-undefined": 0,
     // Disallow the use of Boolean literals in conditional expressions.
     "no-unneeded-ternary": 2,
     // Disallow unreachable statements after a return, throw, continue, or break
     // statement.
     "no-unreachable": 2,
-    // Disallow global and local variables that aren't used, but allow unused function arguments.
+    // Disallow global and local variables that aren't used, but allow unused
+    // function arguments.
     "no-unused-vars": [2, {"vars": "all", "args": "none"}],
     // Allow using variables before they are defined.
     "no-use-before-define": 0,
     // We use var-only-at-top-level instead of no-var as we allow top level
     // vars.
     "no-var": 0,
     // Allow using TODO/FIXME comments.
     "no-warning-comments": 0,
@@ -460,9 +466,9 @@
     // disallow wrapping of non-IIFE statements in parens
     "no-wrap-func": 0,
     // require assignment operator shorthand where possible or prohibit it
     // entirely
     "operator-assignment": 0,
     // enforce operators to be placed before or after line breaks
     "operator-linebreak": 0,
   }
-}
+};
rename from devtools/.eslintrc.mochitests
rename to devtools/.eslintrc.mochitests.js
--- a/devtools/.eslintrc.mochitests
+++ b/devtools/.eslintrc.mochitests.js
@@ -1,20 +1,20 @@
 // Parent config file for all devtools browser mochitest files.
-{
+module.exports = {
   "extends": [
-    "../testing/mochitest/browser.eslintrc"
+    "../testing/mochitest/browser.eslintrc.js"
   ],
   // All globals made available in the test environment.
   "globals": {
     "DevToolsUtils": true,
     "gDevTools": true,
     "once": true,
     "synthesizeKeyFromKeyTag": true,
     "TargetFactory": true,
     "waitForTick": true,
   },
 
   "rules": {
     // Tests can always import anything.
     "mozilla/reject-some-requires": 0,
   },
-}
+};
rename from devtools/.eslintrc.xpcshell
rename to devtools/.eslintrc.xpcshell.js
--- a/devtools/.eslintrc.xpcshell
+++ b/devtools/.eslintrc.xpcshell.js
@@ -1,21 +1,21 @@
 // Parent config file for all devtools xpcshell files.
-{
+module.exports = {
   "extends": [
-    "../testing/xpcshell/xpcshell.eslintrc"
+    "../testing/xpcshell/xpcshell.eslintrc.js"
   ],
   "rules": {
     // Allow non-camelcase so that run_test doesn't produce a warning.
     "camelcase": 0,
     // Allow using undefined variables so that tests can refer to functions
     // and variables defined in head.js files, without having to maintain a
     // list of globals in each .eslintrc file.
     // Note that bug 1168340 will eventually help auto-registering globals
     // from head.js files.
     "no-undef": 0,
     "block-scoped-var": 0,
     // Allow run_test to be unused in xpcshell
     "no-unused-vars": [2, { "varsIgnorePattern": "run_test" }],
     // Tests can always import anything.
     "mozilla/reject-some-requires": 0,
   }
-}
+};
rename from devtools/client/aboutdebugging/test/.eslintrc
rename to devtools/client/aboutdebugging/test/.eslintrc.js
--- a/devtools/client/aboutdebugging/test/.eslintrc
+++ b/devtools/client/aboutdebugging/test/.eslintrc.js
@@ -1,11 +1,13 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests",
+  "extends": "../../../.eslintrc.mochitests.js",
   // All globals made available in aboutdebugging head.js file.
   "globals": {
     "AddonManager": true,
     "addTab": true,
     "assertHasTarget": true,
     "CHROME_ROOT": true,
     "changeAboutDebuggingHash": true,
     "closeAboutDebugging": true,
@@ -16,9 +18,9 @@
     "openPanel": true,
     "removeTab": true,
     "uninstallAddon": true,
     "unregisterServiceWorker": true,
     "waitForInitialAddonList": true,
     "waitForMutation": true,
     "waitForServiceWorkerRegistered": true
   }
-}
+};
rename from devtools/client/animationinspector/test/.eslintrc
rename to devtools/client/animationinspector/test/.eslintrc.js
--- a/devtools/client/animationinspector/test/.eslintrc
+++ b/devtools/client/animationinspector/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/animationinspector/test/unit/.eslintrc
rename to devtools/client/animationinspector/test/unit/.eslintrc.js
--- a/devtools/client/animationinspector/test/unit/.eslintrc
+++ b/devtools/client/animationinspector/test/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools xpcshell eslintrc config.
-  "extends": "../../../../.eslintrc.xpcshell"
-}
\ No newline at end of file
+  "extends": "../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/client/canvasdebugger/test/.eslintrc
rename to devtools/client/canvasdebugger/test/.eslintrc.js
--- a/devtools/client/canvasdebugger/test/.eslintrc
+++ b/devtools/client/canvasdebugger/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/commandline/test/.eslintrc
rename to devtools/client/commandline/test/.eslintrc.js
--- a/devtools/client/commandline/test/.eslintrc
+++ b/devtools/client/commandline/test/.eslintrc.js
@@ -1,8 +1,10 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests",
+  "extends": "../../../.eslintrc.mochitests.js",
   "globals": {
     "helpers": true,
     "assert": true
   }
-}
+};
rename from devtools/client/debugger/new/test/mochitest/.eslintrc
rename to devtools/client/debugger/new/test/mochitest/.eslintrc.js
--- a/devtools/client/debugger/new/test/mochitest/.eslintrc
+++ b/devtools/client/debugger/new/test/mochitest/.eslintrc.js
@@ -1,9 +1,11 @@
-{
+"use strict";
+
+module.exports = {
   "globals": {
     "add_task": false,
     "Assert": false,
     "BrowserTestUtils": false,
     "content": false,
     "ContentTask": false,
     "ContentTaskUtils": false,
     "EventUtils": false,
@@ -65,9 +67,9 @@
     "addBreakpoint": false,
     "toggleCallStack": false,
     "isVisibleWithin": false,
     "clickElement": false,
     "togglePauseOnExceptions": false,
     "pressKey": false,
     "EXAMPLE_URL": false
   }
-}
+};
rename from devtools/client/debugger/test/.eslintrc
rename to devtools/client/debugger/test/.eslintrc.js
--- a/devtools/client/debugger/test/.eslintrc
+++ b/devtools/client/debugger/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/dom/.eslintrc
rename to devtools/client/dom/.eslintrc.js
--- a/devtools/client/dom/.eslintrc
+++ b/devtools/client/dom/.eslintrc.js
@@ -1,15 +1,17 @@
-{
+"use strict";
+
+module.exports = {
   "globals": {
     "XMLHttpRequest": true,
     "window": true,
     "define": true,
     "addEventListener": true,
     "document": true,
     "dispatchEvent": true,
     "MessageEvent": true
   },
   "rules": {
     "indent": 0,
     "padded-blocks": 0,
   }
-}
+};
rename from devtools/client/dom/test/.eslintrc
rename to devtools/client/dom/test/.eslintrc.js
--- a/devtools/client/dom/test/.eslintrc
+++ b/devtools/client/dom/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests",
-}
+  "extends": "../../../.eslintrc.mochitests.js",
+};
rename from devtools/client/framework/test/.eslintrc
rename to devtools/client/framework/test/.eslintrc.js
--- a/devtools/client/framework/test/.eslintrc
+++ b/devtools/client/framework/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/inspector/.eslintrc
rename to devtools/client/inspector/.eslintrc.js
--- a/devtools/client/inspector/.eslintrc
+++ b/devtools/client/inspector/.eslintrc.js
@@ -1,12 +1,15 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the devtools eslintrc.
-  "extends": "../../.eslintrc",
+  "extends": "../../.eslintrc.js",
 
   "rules": {
     // The inspector is being migrated to HTML and cleaned of
     // chrome-privileged code, so this rule disallows requiring chrome
     // code. Some files in the inspector disable this rule still. The
     // goal is to enable the rule globally on all files.
+    /* eslint-disable max-len */
     "mozilla/reject-some-requires": [2, "^(chrome|chrome:.*|resource:.*|devtools/server/.*|.*\\.jsm|devtools/shared/platform/(chome|content)/.*)$"],
   },
-}
+};
rename from devtools/client/inspector/components/test/.eslintrc
rename to devtools/client/inspector/components/test/.eslintrc.js
--- a/devtools/client/inspector/components/test/.eslintrc
+++ b/devtools/client/inspector/components/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/inspector/computed/test/.eslintrc
rename to devtools/client/inspector/computed/test/.eslintrc.js
--- a/devtools/client/inspector/computed/test/.eslintrc
+++ b/devtools/client/inspector/computed/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/inspector/fonts/test/.eslintrc
rename to devtools/client/inspector/fonts/test/.eslintrc.js
--- a/devtools/client/inspector/fonts/test/.eslintrc
+++ b/devtools/client/inspector/fonts/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/inspector/markup/test/.eslintrc
rename to devtools/client/inspector/markup/test/.eslintrc.js
--- a/devtools/client/inspector/markup/test/.eslintrc
+++ b/devtools/client/inspector/markup/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/inspector/rules/test/.eslintrc
rename to devtools/client/inspector/rules/test/.eslintrc.js
--- a/devtools/client/inspector/rules/test/.eslintrc
+++ b/devtools/client/inspector/rules/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/inspector/shared/test/.eslintrc
rename to devtools/client/inspector/shared/test/.eslintrc.js
--- a/devtools/client/inspector/shared/test/.eslintrc
+++ b/devtools/client/inspector/shared/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/inspector/test/.eslintrc
rename to devtools/client/inspector/test/.eslintrc.js
--- a/devtools/client/inspector/test/.eslintrc
+++ b/devtools/client/inspector/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/jsonview/.eslintrc
rename to devtools/client/jsonview/.eslintrc.js
--- a/devtools/client/jsonview/.eslintrc
+++ b/devtools/client/jsonview/.eslintrc.js
@@ -1,9 +1,11 @@
-{
+"use strict";
+
+module.exports = {
   "globals": {
     "define": true,
     "document": true,
     "window": true,
     "CustomEvent": true,
     "Locale": true
   }
-}
+};
rename from devtools/client/jsonview/test/.eslintrc
rename to devtools/client/jsonview/test/.eslintrc.js
--- a/devtools/client/jsonview/test/.eslintrc
+++ b/devtools/client/jsonview/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/memory/test/browser/.eslintrc
rename to devtools/client/memory/test/browser/.eslintrc.js
--- a/devtools/client/memory/test/browser/.eslintrc
+++ b/devtools/client/memory/test/browser/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/memory/test/unit/.eslintrc
rename to devtools/client/memory/test/unit/.eslintrc.js
--- a/devtools/client/memory/test/unit/.eslintrc
+++ b/devtools/client/memory/test/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.xpcshell"
-}
+  "extends": "../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/client/netmonitor/.eslintrc
rename to devtools/client/netmonitor/.eslintrc.js
--- a/devtools/client/netmonitor/.eslintrc
+++ b/devtools/client/netmonitor/.eslintrc.js
@@ -1,12 +1,15 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the devtools eslintrc.
-  "extends": "../../.eslintrc",
+  "extends": "../../.eslintrc.js",
 
   "rules": {
     // The netmonitor is being migrated to HTML and cleaned of
     // chrome-privileged code, so this rule disallows requiring chrome
     // code. Some files in the netmonitor disable this rule still. The
     // goal is to enable the rule globally on all files.
+    /* eslint-disable max-len */
     "mozilla/reject-some-requires": [2, "^(chrome|chrome:.*|resource:.*|devtools/server/.*|.*\\.jsm|devtools/shared/platform/(chome|content)/.*)$"],
   },
-}
+};
rename from devtools/client/netmonitor/har/test/.eslintrc
rename to devtools/client/netmonitor/har/test/.eslintrc.js
--- a/devtools/client/netmonitor/har/test/.eslintrc
+++ b/devtools/client/netmonitor/har/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/netmonitor/test/.eslintrc
rename to devtools/client/netmonitor/test/.eslintrc.js
--- a/devtools/client/netmonitor/test/.eslintrc
+++ b/devtools/client/netmonitor/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/performance/test/.eslintrc
rename to devtools/client/performance/test/.eslintrc.js
--- a/devtools/client/performance/test/.eslintrc
+++ b/devtools/client/performance/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/performance/test/unit/.eslintrc
rename to devtools/client/performance/test/unit/.eslintrc.js
--- a/devtools/client/performance/test/unit/.eslintrc
+++ b/devtools/client/performance/test/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.xpcshell"
-}
+  "extends": "../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/client/projecteditor/test/.eslintrc
rename to devtools/client/projecteditor/test/.eslintrc.js
--- a/devtools/client/projecteditor/test/.eslintrc
+++ b/devtools/client/projecteditor/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/promisedebugger/test/.eslintrc
rename to devtools/client/promisedebugger/test/.eslintrc.js
--- a/devtools/client/promisedebugger/test/.eslintrc
+++ b/devtools/client/promisedebugger/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/responsive.html/test/browser/.eslintrc
rename to devtools/client/responsive.html/test/browser/.eslintrc.js
--- a/devtools/client/responsive.html/test/browser/.eslintrc
+++ b/devtools/client/responsive.html/test/browser/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/responsive.html/test/unit/.eslintrc
rename to devtools/client/responsive.html/test/unit/.eslintrc.js
--- a/devtools/client/responsive.html/test/unit/.eslintrc
+++ b/devtools/client/responsive.html/test/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for xpcshell.
-  "extends": "../../../../.eslintrc.xpcshell"
-}
+  "extends": "../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/client/responsivedesign/test/.eslintrc
rename to devtools/client/responsivedesign/test/.eslintrc.js
--- a/devtools/client/responsivedesign/test/.eslintrc
+++ b/devtools/client/responsivedesign/test/.eslintrc.js
@@ -1,8 +1,10 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests",
+  "extends": "../../../.eslintrc.mochitests.js",
   "globals": {
     "ResponsiveUI": true,
     "helpers": true
   }
-}
+};
rename from devtools/client/scratchpad/test/.eslintrc
rename to devtools/client/scratchpad/test/.eslintrc.js
--- a/devtools/client/scratchpad/test/.eslintrc
+++ b/devtools/client/scratchpad/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/shadereditor/test/.eslintrc
rename to devtools/client/shadereditor/test/.eslintrc.js
--- a/devtools/client/shadereditor/test/.eslintrc
+++ b/devtools/client/shadereditor/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/shared/components/.eslintrc
rename to devtools/client/shared/components/.eslintrc.js
--- a/devtools/client/shared/components/.eslintrc
+++ b/devtools/client/shared/components/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "globals": {
     "define": true,
   }
-}
+};
rename from devtools/client/shared/components/test/browser/.eslintrc
rename to devtools/client/shared/components/test/browser/.eslintrc.js
--- a/devtools/client/shared/components/test/browser/.eslintrc
+++ b/devtools/client/shared/components/test/browser/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../../.eslintrc.mochitests",
-}
+  "extends": "../../../../../.eslintrc.mochitests.js",
+};
rename from devtools/client/shared/components/test/mochitest/.eslintrc
rename to devtools/client/shared/components/test/mochitest/.eslintrc.js
--- a/devtools/client/shared/components/test/mochitest/.eslintrc
+++ b/devtools/client/shared/components/test/mochitest/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/shared/shim/test/.eslintrc
rename to devtools/client/shared/shim/test/.eslintrc.js
--- a/devtools/client/shared/shim/test/.eslintrc
+++ b/devtools/client/shared/shim/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/shared/test/.eslintrc
rename to devtools/client/shared/test/.eslintrc.js
--- a/devtools/client/shared/test/.eslintrc
+++ b/devtools/client/shared/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/shared/test/unit/.eslintrc
rename to devtools/client/shared/test/unit/.eslintrc.js
--- a/devtools/client/shared/test/unit/.eslintrc
+++ b/devtools/client/shared/test/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools xpcshell eslintrc config.
-  "extends": "../../../../.eslintrc.xpcshell"
-}
\ No newline at end of file
+  "extends": "../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/client/sourceeditor/.eslintrc
rename to devtools/client/sourceeditor/.eslintrc.js
--- a/devtools/client/sourceeditor/.eslintrc
+++ b/devtools/client/sourceeditor/.eslintrc.js
@@ -1,12 +1,15 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the devtools eslintrc.
-  "extends": "../../.eslintrc",
+  "extends": "../../.eslintrc.js",
 
   "rules": {
     // The inspector is being migrated to HTML and cleaned of
     // chrome-privileged code, so this rule disallows requiring chrome
     // code. Some files here disable this rule still. The
     // goal is to enable the rule globally on all files.
+    /* eslint-disable max-len */
     "mozilla/reject-some-requires": [2, "^(chrome|chrome:.*|resource:.*|devtools/server/.*|.*\\.jsm)$"],
   },
-}
+};
rename from devtools/client/sourceeditor/test/.eslintrc
rename to devtools/client/sourceeditor/test/.eslintrc.js
--- a/devtools/client/sourceeditor/test/.eslintrc
+++ b/devtools/client/sourceeditor/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/storage/test/.eslintrc
rename to devtools/client/storage/test/.eslintrc.js
--- a/devtools/client/storage/test/.eslintrc
+++ b/devtools/client/storage/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/styleeditor/test/.eslintrc
rename to devtools/client/styleeditor/test/.eslintrc.js
--- a/devtools/client/styleeditor/test/.eslintrc
+++ b/devtools/client/styleeditor/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/webaudioeditor/test/.eslintrc
rename to devtools/client/webaudioeditor/test/.eslintrc.js
--- a/devtools/client/webaudioeditor/test/.eslintrc
+++ b/devtools/client/webaudioeditor/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/webconsole/net/.eslintrc
rename to devtools/client/webconsole/net/.eslintrc.js
--- a/devtools/client/webconsole/net/.eslintrc
+++ b/devtools/client/webconsole/net/.eslintrc.js
@@ -1,18 +1,20 @@
-{
+"use strict";
+
+module.exports = {
   "globals": {
     "Locale": true,
     "Document": true,
     "document": true,
     "Node": true,
     "Element": true,
     "MessageEvent": true,
     "BrowserLoader": true,
     "addEventListener": true,
     "DOMParser": true,
     "dispatchEvent": true,
     "setTimeout": true
   },
   "rules": {
     "no-unused-vars": [2, {"args": "none"}],
   }
-}
+};
rename from devtools/client/webconsole/net/test/mochitest/.eslintrc
rename to devtools/client/webconsole/net/test/mochitest/.eslintrc.js
--- a/devtools/client/webconsole/net/test/mochitest/.eslintrc
+++ b/devtools/client/webconsole/net/test/mochitest/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../../.eslintrc.mochitests",
-}
+  "extends": "../../../../../.eslintrc.mochitests.js",
+};
rename from devtools/client/webconsole/net/test/unit/.eslintrc
rename to devtools/client/webconsole/net/test/unit/.eslintrc.js
--- a/devtools/client/webconsole/net/test/unit/.eslintrc
+++ b/devtools/client/webconsole/net/test/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools xpcshell eslintrc config.
-  "extends": "../../../../../.eslintrc.xpcshell"
-}
\ No newline at end of file
+  "extends": "../../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/client/webconsole/new-console-output/test/.eslintrc
rename to devtools/client/webconsole/new-console-output/test/.eslintrc.js
--- a/devtools/client/webconsole/new-console-output/test/.eslintrc
+++ b/devtools/client/webconsole/new-console-output/test/.eslintrc.js
@@ -1,3 +1,5 @@
-{
-  "extends": ["../../../../.eslintrc.xpcshell"]
-}
+"use strict";
+
+module.exports = {
+  "extends": ["../../../../.eslintrc.xpcshell.js"]
+};
rename from devtools/client/webconsole/test/.eslintrc
rename to devtools/client/webconsole/test/.eslintrc.js
--- a/devtools/client/webconsole/test/.eslintrc
+++ b/devtools/client/webconsole/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/client/webide/test/.eslintrc
rename to devtools/client/webide/test/.eslintrc.js
--- a/devtools/client/webide/test/.eslintrc
+++ b/devtools/client/webide/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/server/tests/browser/.eslintrc
rename to devtools/server/tests/browser/.eslintrc.js
--- a/devtools/server/tests/browser/.eslintrc
+++ b/devtools/server/tests/browser/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools mochitest eslintrc config.
-  "extends": "../../../.eslintrc.xpcshell"
-}
+  "extends": "../../../.eslintrc.xpcshell.js"
+};
rename from devtools/server/tests/mochitest/.eslintrc
rename to devtools/server/tests/mochitest/.eslintrc.js
--- a/devtools/server/tests/mochitest/.eslintrc
+++ b/devtools/server/tests/mochitest/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools mochitest eslintrc config.
-  "extends": "../../../.eslintrc.xpcshell"
-}
+  "extends": "../../../.eslintrc.xpcshell.js"
+};
rename from devtools/server/tests/unit/.eslintrc
rename to devtools/server/tests/unit/.eslintrc.js
--- a/devtools/server/tests/unit/.eslintrc
+++ b/devtools/server/tests/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools xpcshell eslintrc config.
-  "extends": "../../../.eslintrc.xpcshell"
-}
+  "extends": "../../../.eslintrc.xpcshell.js"
+};
rename from devtools/shared/heapsnapshot/tests/unit/.eslintrc
rename to devtools/shared/heapsnapshot/tests/unit/.eslintrc.js
--- a/devtools/shared/heapsnapshot/tests/unit/.eslintrc
+++ b/devtools/shared/heapsnapshot/tests/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools xpcshell eslintrc config.
-  "extends": "../../../../.eslintrc.xpcshell"
-}
\ No newline at end of file
+  "extends": "../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/shared/platform/content/.eslintrc
rename to devtools/shared/platform/content/.eslintrc.js
--- a/devtools/shared/platform/content/.eslintrc
+++ b/devtools/shared/platform/content/.eslintrc.js
@@ -1,9 +1,12 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the devtools eslintrc.
-  "extends": "../../../.eslintrc",
+  "extends": "../../../.eslintrc.js",
 
   "rules": {
+    /* eslint-disable max-len */
     // All code in this directory must be content-clean.
     "mozilla/reject-some-requires": [2, "^(chrome|chrome:.*|resource:.*|devtools/server/.*|.*\\.jsm|devtools/shared/platform/(chome|content)/.*)$"],
   },
-}
+};
rename from devtools/shared/platform/content/test/.eslintrc
rename to devtools/shared/platform/content/test/.eslintrc.js
--- a/devtools/shared/platform/content/test/.eslintrc
+++ b/devtools/shared/platform/content/test/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools xpcshell eslintrc config.
-  "extends": "../../../../.eslintrc.xpcshell"
-}
+  "extends": "../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/shared/security/tests/unit/.eslintrc
rename to devtools/shared/security/tests/unit/.eslintrc.js
--- a/devtools/shared/security/tests/unit/.eslintrc
+++ b/devtools/shared/security/tests/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools xpcshell eslintrc config.
-  "extends": "../../../../.eslintrc.xpcshell"
-}
\ No newline at end of file
+  "extends": "../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/shared/tests/browser/.eslintrc
rename to devtools/shared/tests/browser/.eslintrc.js
--- a/devtools/shared/tests/browser/.eslintrc
+++ b/devtools/shared/tests/browser/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../.eslintrc.mochitests"
-}
+  "extends": "../../../.eslintrc.mochitests.js"
+};
rename from devtools/shared/tests/unit/.eslintrc
rename to devtools/shared/tests/unit/.eslintrc.js
--- a/devtools/shared/tests/unit/.eslintrc
+++ b/devtools/shared/tests/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools xpcshell eslintrc config.
-  "extends": "../../../.eslintrc.xpcshell"
-}
+  "extends": "../../../.eslintrc.xpcshell.js"
+};
rename from devtools/shared/transport/tests/unit/.eslintrc
rename to devtools/shared/transport/tests/unit/.eslintrc.js
--- a/devtools/shared/transport/tests/unit/.eslintrc
+++ b/devtools/shared/transport/tests/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools xpcshell eslintrc config.
-  "extends": "../../../../.eslintrc.xpcshell"
-}
\ No newline at end of file
+  "extends": "../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/shared/webconsole/test/unit/.eslintrc
rename to devtools/shared/webconsole/test/unit/.eslintrc.js
--- a/devtools/shared/webconsole/test/unit/.eslintrc
+++ b/devtools/shared/webconsole/test/unit/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the common devtools xpcshell eslintrc config.
-  "extends": "../../../../.eslintrc.xpcshell"
-}
\ No newline at end of file
+  "extends": "../../../../.eslintrc.xpcshell.js"
+};
rename from devtools/shared/worker/tests/browser/.eslintrc
rename to devtools/shared/worker/tests/browser/.eslintrc.js
--- a/devtools/shared/worker/tests/browser/.eslintrc
+++ b/devtools/shared/worker/tests/browser/.eslintrc.js
@@ -1,4 +1,6 @@
-{
+"use strict";
+
+module.exports = {
   // Extend from the shared list of defined globals for mochitests.
-  "extends": "../../../../.eslintrc.mochitests"
-}
+  "extends": "../../../../.eslintrc.mochitests.js"
+};
rename from mobile/android/components/extensions/.eslintrc
rename to mobile/android/components/extensions/.eslintrc.js
--- a/mobile/android/components/extensions/.eslintrc
+++ b/mobile/android/components/extensions/.eslintrc.js
@@ -1,3 +1,5 @@
-{
-  "extends": "../../../../toolkit/components/extensions/.eslintrc",
-}
+"use strict";
+
+module.exports = {
+  "extends": "../../../../toolkit/components/extensions/.eslintrc.js",
+};
rename from mobile/android/components/extensions/test/mochitest/.eslintrc
rename to mobile/android/components/extensions/test/mochitest/.eslintrc.js
--- a/mobile/android/components/extensions/test/mochitest/.eslintrc
+++ b/mobile/android/components/extensions/test/mochitest/.eslintrc.js
@@ -1,8 +1,10 @@
-{
-  "extends": "../../../../../../toolkit/components/extensions/test/mochitest/.eslintrc",
+"use strict";
+
+module.exports = {
+  "extends": "../../../../../../toolkit/components/extensions/test/mochitest/.eslintrc.js",
 
   "globals": {
     "isPageActionShown": true,
     "clickPageAction": true,
   },
-}
+};
rename from security/manager/.eslintrc.json
rename to security/manager/.eslintrc.js
--- a/security/manager/.eslintrc.json
+++ b/security/manager/.eslintrc.js
@@ -1,9 +1,11 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "rules": {
     // Braces only needed for multi-line arrow function blocks
     "arrow-body-style": [2, "as-needed"],
 
     // Require spacing around =>
     "arrow-spacing": 2,
 
     // Always require spacing around a single line block
@@ -213,9 +215,9 @@
   },
   "env": {
     "browser": true
   },
   "globals": {
     "Components": false,
     "dump": false
   }
-}
+};
rename from security/manager/ssl/tests/.eslintrc.json
rename to security/manager/ssl/tests/.eslintrc.js
--- a/security/manager/ssl/tests/.eslintrc.json
+++ b/security/manager/ssl/tests/.eslintrc.js
@@ -1,6 +1,8 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "rules": {
     // Disallow non-top level |var| declarations.
     "mozilla/var-only-at-top-level": 2
   }
-}
+};
rename from security/manager/ssl/tests/mochitest/browser/.eslintrc.json
rename to security/manager/ssl/tests/mochitest/browser/.eslintrc.js
--- a/security/manager/ssl/tests/mochitest/browser/.eslintrc.json
+++ b/security/manager/ssl/tests/mochitest/browser/.eslintrc.js
@@ -1,3 +1,5 @@
-{
-  "extends": "../../../../../../testing/mochitest/browser.eslintrc"
-}
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../../../../../testing/mochitest/browser.eslintrc.js"
+};
rename from security/manager/ssl/tests/mochitest/mixedcontent/.eslintrc.json
rename to security/manager/ssl/tests/mochitest/mixedcontent/.eslintrc.js
--- a/security/manager/ssl/tests/mochitest/mixedcontent/.eslintrc.json
+++ b/security/manager/ssl/tests/mochitest/mixedcontent/.eslintrc.js
@@ -1,3 +1,5 @@
-{
-  "extends": "../../../../../../testing/mochitest/mochitest.eslintrc"
-}
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../../../../../testing/mochitest/mochitest.eslintrc.js"
+};
rename from security/manager/ssl/tests/mochitest/stricttransportsecurity/.eslintrc.json
rename to security/manager/ssl/tests/mochitest/stricttransportsecurity/.eslintrc.js
--- a/security/manager/ssl/tests/mochitest/stricttransportsecurity/.eslintrc.json
+++ b/security/manager/ssl/tests/mochitest/stricttransportsecurity/.eslintrc.js
@@ -1,7 +1,9 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   // mochitest-chrome tests also exist in this directory, but don't appear to
   // use anything not also available to plain mochitests. Since plain mochitests
   // are the majority, we take the safer option and only extend the
   // mochitest-plain eslintrc file.
-  "extends": "../../../../../../testing/mochitest/mochitest.eslintrc"
-}
+  "extends": "../../../../../../testing/mochitest/mochitest.eslintrc.js"
+};
rename from security/manager/ssl/tests/unit/.eslintrc.json
rename to security/manager/ssl/tests/unit/.eslintrc.js
--- a/security/manager/ssl/tests/unit/.eslintrc.json
+++ b/security/manager/ssl/tests/unit/.eslintrc.js
@@ -1,3 +1,5 @@
-{
-  "extends": "../../../../../testing/xpcshell/xpcshell.eslintrc"
-}
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
+};
rename from security/manager/tools/.eslintrc.json
rename to security/manager/tools/.eslintrc.js
--- a/security/manager/tools/.eslintrc.json
+++ b/security/manager/tools/.eslintrc.js
@@ -1,7 +1,9 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "globals": {
     // JS files in this folder are commonly xpcshell scripts where |arguments|
     // is defined in the global scope.
     "arguments": false
   }
-}
+};
rename from storage/.eslintrc
rename to storage/.eslintrc.js
--- a/storage/.eslintrc
+++ b/storage/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../toolkit/.eslintrc"
+    "../toolkit/.eslintrc.js"
   ]
-}
+};
rename from testing/mochitest/browser.eslintrc
rename to testing/mochitest/browser.eslintrc.js
--- a/testing/mochitest/browser.eslintrc
+++ b/testing/mochitest/browser.eslintrc.js
@@ -1,17 +1,18 @@
 // Parent config file for all browser-chrome files.
-{
+module.exports = {
   "rules": {
     "mozilla/import-headjs-globals": 2,
     "mozilla/import-browserjs-globals": 2,
   },
 
   "env": {
     "browser": true,
+    //"node": true
   },
 
   // All globals made available in the test environment.
   "globals": {
     "add_task": false,
     "Assert": false,
     "BrowserTestUtils": false,
     "content": false,
@@ -39,9 +40,9 @@
     "thisTestLeaksUncaughtRejectionsAndShouldBeFixed": false,
     "todo": false,
     "todo_is": false,
     "todo_isnot": false,
     "waitForClipboard": false,
     "waitForExplicitFinish": false,
     "waitForFocus": false,
   }
-}
+};
rename from testing/mochitest/chrome.eslintrc
rename to testing/mochitest/chrome.eslintrc.js
--- a/testing/mochitest/chrome.eslintrc
+++ b/testing/mochitest/chrome.eslintrc.js
@@ -1,10 +1,10 @@
 // Parent config file for all mochitest files.
-{
+module.exports = {
   rules: {
     "mozilla/import-headjs-globals": 1,
   },
 
   "env": {
     "browser": true,
   },
 
@@ -30,9 +30,9 @@
     "SpecialPowers": false,
     "todo": false,
     "todo_is": false,
     "todo_isnot": false,
     "waitForClipboard": false,
     "waitForExplicitFinish": false,
     "waitForFocus": false,
   }
-}
+};
rename from testing/mochitest/mochitest.eslintrc
rename to testing/mochitest/mochitest.eslintrc.js
--- a/testing/mochitest/mochitest.eslintrc
+++ b/testing/mochitest/mochitest.eslintrc.js
@@ -1,10 +1,10 @@
 // Parent config file for all mochitest files.
-{
+module.exports = {
   rules: {
     "mozilla/import-headjs-globals": 1,
   },
 
   "env": {
     "browser": true,
   },
 
@@ -31,9 +31,9 @@
     "SpecialPowers": false,
     "todo": false,
     "todo_is": false,
     "todo_isnot": false,
     "waitForClipboard": false,
     "waitForExplicitFinish": false,
     "waitForFocus": false,
   }
-}
+};
rename from testing/xpcshell/xpcshell.eslintrc
rename to testing/xpcshell/xpcshell.eslintrc.js
--- a/testing/xpcshell/xpcshell.eslintrc
+++ b/testing/xpcshell/xpcshell.eslintrc.js
@@ -1,10 +1,10 @@
 // Parent config file for all xpcshell files.
-{
+module.exports = {
   rules: {
     "mozilla/import-headjs-globals": 1,
   },
 
   // All globals made available in the test environment.
   "globals": {
     "add_task": false,
     "add_test": false,
@@ -44,9 +44,9 @@
     "run_test": false,
     "run_test_in_child": false,
     "strictEqual": false,
     "throws": false,
     "todo": false,
     "todo_check_false": false,
     "todo_check_true": false,
   }
-}
+};
rename from toolkit/.eslintrc
rename to toolkit/.eslintrc.js
--- a/toolkit/.eslintrc
+++ b/toolkit/.eslintrc.js
@@ -1,9 +1,11 @@
-{
+"use strict";
+
+module.exports = {
   // When adding items to this file please check for effects on all of toolkit
   // and browser
   "rules": {
     // Braces only needed for multi-line arrow function blocks
     // "arrow-body-style": [2, "as-needed"],
 
     // Require spacing around =>
     "arrow-spacing": 2,
@@ -66,17 +68,17 @@
 
     // No labels
     "no-labels": 2,
 
     // If an if block ends with a return no need for an else block
     "no-else-return": 2,
 
     // No empty statements
-    "no-empty": [2, "allowEmptyCatch": true],
+    "no-empty": [2, {"allowEmptyCatch": true}],
 
     // No empty character classes in regex
     "no-empty-character-class": 2,
 
     // Disallow empty destructuring
     "no-empty-pattern": 2,
 
     // No assiging to exception variable
@@ -192,9 +194,9 @@
     "browser": true,
   },
   "globals": {
     "Components": false,
     "dump": true,
     "openDialog": false,
     "sizeToContent": false,
   }
-}
+};
rename from toolkit/components/aboutmemory/tests/.eslintrc
rename to toolkit/components/aboutmemory/tests/.eslintrc.js
--- a/toolkit/components/aboutmemory/tests/.eslintrc
+++ b/toolkit/components/aboutmemory/tests/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/aboutperformance/tests/browser/.eslintrc
rename to toolkit/components/aboutperformance/tests/browser/.eslintrc.js
--- a/toolkit/components/aboutperformance/tests/browser/.eslintrc
+++ b/toolkit/components/aboutperformance/tests/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/addoncompat/tests/browser/.eslintrc
rename to toolkit/components/addoncompat/tests/browser/.eslintrc.js
--- a/toolkit/components/addoncompat/tests/browser/.eslintrc
+++ b/toolkit/components/addoncompat/tests/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/alerts/test/.eslintrc
rename to toolkit/components/alerts/test/.eslintrc.js
--- a/toolkit/components/alerts/test/.eslintrc
+++ b/toolkit/components/alerts/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/mochitest.eslintrc"
+    "../../../../testing/mochitest/mochitest.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/asyncshutdown/tests/xpcshell/.eslintrc
rename to toolkit/components/asyncshutdown/tests/xpcshell/.eslintrc.js
--- a/toolkit/components/asyncshutdown/tests/xpcshell/.eslintrc
+++ b/toolkit/components/asyncshutdown/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/autocomplete/tests/unit/.eslintrc
rename to toolkit/components/autocomplete/tests/unit/.eslintrc.js
--- a/toolkit/components/autocomplete/tests/unit/.eslintrc
+++ b/toolkit/components/autocomplete/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/captivedetect/test/unit/.eslintrc
rename to toolkit/components/captivedetect/test/unit/.eslintrc.js
--- a/toolkit/components/captivedetect/test/unit/.eslintrc
+++ b/toolkit/components/captivedetect/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/commandlines/test/unit/.eslintrc
rename to toolkit/components/commandlines/test/unit/.eslintrc.js
--- a/toolkit/components/commandlines/test/unit/.eslintrc
+++ b/toolkit/components/commandlines/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/commandlines/test/unit_unix/.eslintrc
rename to toolkit/components/commandlines/test/unit_unix/.eslintrc.js
--- a/toolkit/components/commandlines/test/unit_unix/.eslintrc
+++ b/toolkit/components/commandlines/test/unit_unix/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/commandlines/test/unit_win/.eslintrc
rename to toolkit/components/commandlines/test/unit_win/.eslintrc.js
--- a/toolkit/components/commandlines/test/unit_win/.eslintrc
+++ b/toolkit/components/commandlines/test/unit_win/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/contentprefs/tests/mochitest/.eslintrc
rename to toolkit/components/contentprefs/tests/mochitest/.eslintrc.js
--- a/toolkit/components/contentprefs/tests/mochitest/.eslintrc
+++ b/toolkit/components/contentprefs/tests/mochitest/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/mochitest.eslintrc"
+    "../../../../../testing/mochitest/mochitest.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/contentprefs/tests/unit/.eslintrc
rename to toolkit/components/contentprefs/tests/unit/.eslintrc.js
--- a/toolkit/components/contentprefs/tests/unit/.eslintrc
+++ b/toolkit/components/contentprefs/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/contentprefs/tests/unit_cps2/.eslintrc
rename to toolkit/components/contentprefs/tests/unit_cps2/.eslintrc.js
--- a/toolkit/components/contentprefs/tests/unit_cps2/.eslintrc
+++ b/toolkit/components/contentprefs/tests/unit_cps2/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/crashes/tests/xpcshell/.eslintrc
rename to toolkit/components/crashes/tests/xpcshell/.eslintrc.js
--- a/toolkit/components/crashes/tests/xpcshell/.eslintrc
+++ b/toolkit/components/crashes/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/crashmonitor/test/unit/.eslintrc
rename to toolkit/components/crashmonitor/test/unit/.eslintrc.js
--- a/toolkit/components/crashmonitor/test/unit/.eslintrc
+++ b/toolkit/components/crashmonitor/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/ctypes/tests/chrome/.eslintrc
rename to toolkit/components/ctypes/tests/chrome/.eslintrc.js
--- a/toolkit/components/ctypes/tests/chrome/.eslintrc
+++ b/toolkit/components/ctypes/tests/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/ctypes/tests/unit/.eslintrc
rename to toolkit/components/ctypes/tests/unit/.eslintrc.js
--- a/toolkit/components/ctypes/tests/unit/.eslintrc
+++ b/toolkit/components/ctypes/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/downloads/test/unit/.eslintrc
rename to toolkit/components/downloads/test/unit/.eslintrc.js
--- a/toolkit/components/downloads/test/unit/.eslintrc
+++ b/toolkit/components/downloads/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/extensions/.eslintrc
rename to toolkit/components/extensions/.eslintrc.js
--- a/toolkit/components/extensions/.eslintrc
+++ b/toolkit/components/extensions/.eslintrc.js
@@ -1,10 +1,12 @@
-{
-  "extends": "../../.eslintrc",
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../.eslintrc.js",
 
   "globals": {
     "Cc": true,
     "Ci": true,
     "Components": true,
     "Cr": true,
     "Cu": true,
     "dump": true,
@@ -347,17 +349,17 @@
 
     // Allow the use of leading or trailing decimal points in numeric literals.
     "no-floating-decimal": 0,
 
     // Allow comments inline after code.
     "no-inline-comments": 0,
 
     // Disallow use of labels for anything other then loops and switches.
-    "no-labels": [2, { "allowLoop": true }],
+    "no-labels": [2, {"allowLoop": true}],
 
     // Disallow use of multiline strings (use template strings instead).
     "no-multi-str": 1,
 
     // Disallow multiple empty lines.
     "no-multiple-empty-lines": [1, {"max": 2}],
 
     // Allow reassignment of function parameters.
@@ -483,10 +485,10 @@
     // Disallow usage of __iterator__ property
     "no-iterator": 2,
 
     // Disallow labels that share a name with a variable
     "no-label-var": 2,
 
     // Disallow creating new instances of String, Number, and Boolean
     "no-new-wrappers": 2,
-  }
-}
+  },
+};
rename from toolkit/components/extensions/test/mochitest/.eslintrc
rename to toolkit/components/extensions/test/mochitest/.eslintrc.js
--- a/toolkit/components/extensions/test/mochitest/.eslintrc
+++ b/toolkit/components/extensions/test/mochitest/.eslintrc.js
@@ -1,18 +1,20 @@
-{
-  "extends": "../../../../../testing/mochitest/mochitest.eslintrc",
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../../../../testing/mochitest/mochitest.eslintrc.js",
 
   "env": {
     "webextensions": true,
   },
 
   "globals": {
     "sendAsyncMessage": false,
 
     "waitForLoad": true,
     "promiseConsoleOutput": true,
 
     "ExtensionTestUtils": false,
     "NetUtil": true,
     "XPCOMUtils": true,
   },
-}
+};
rename from toolkit/components/extensions/test/xpcshell/.eslintrc
rename to toolkit/components/extensions/test/xpcshell/.eslintrc.js
--- a/toolkit/components/extensions/test/xpcshell/.eslintrc
+++ b/toolkit/components/extensions/test/xpcshell/.eslintrc.js
@@ -1,7 +1,9 @@
-{
-  "extends": "../../../../../testing/xpcshell/xpcshell.eslintrc",
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../../../../testing/xpcshell/xpcshell.eslintrc.js",
 
   "globals": {
     "browser": false,
   },
-}
+};
rename from toolkit/components/feeds/test/.eslintrc
rename to toolkit/components/feeds/test/.eslintrc.js
--- a/toolkit/components/feeds/test/.eslintrc
+++ b/toolkit/components/feeds/test/.eslintrc.js
@@ -1,6 +1,8 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/chrome.eslintrc",
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/mochitest/chrome.eslintrc.js",
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/filepicker/test/unit/.eslintrc
rename to toolkit/components/filepicker/test/unit/.eslintrc.js
--- a/toolkit/components/filepicker/test/unit/.eslintrc
+++ b/toolkit/components/filepicker/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/filewatcher/tests/xpcshell/.eslintrc
rename to toolkit/components/filewatcher/tests/xpcshell/.eslintrc.js
--- a/toolkit/components/filewatcher/tests/xpcshell/.eslintrc
+++ b/toolkit/components/filewatcher/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/formautofill/test/browser/.eslintrc
rename to toolkit/components/formautofill/test/browser/.eslintrc.js
--- a/toolkit/components/formautofill/test/browser/.eslintrc
+++ b/toolkit/components/formautofill/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/formautofill/test/chrome/.eslintrc
rename to toolkit/components/formautofill/test/chrome/.eslintrc.js
--- a/toolkit/components/formautofill/test/chrome/.eslintrc
+++ b/toolkit/components/formautofill/test/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/formautofill/test/xpcshell/.eslintrc
rename to toolkit/components/formautofill/test/xpcshell/.eslintrc.js
--- a/toolkit/components/formautofill/test/xpcshell/.eslintrc
+++ b/toolkit/components/formautofill/test/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/jsdownloads/test/browser/.eslintrc
rename to toolkit/components/jsdownloads/test/browser/.eslintrc.js
--- a/toolkit/components/jsdownloads/test/browser/.eslintrc
+++ b/toolkit/components/jsdownloads/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/jsdownloads/test/data/.eslintrc
rename to toolkit/components/jsdownloads/test/data/.eslintrc.js
--- a/toolkit/components/jsdownloads/test/data/.eslintrc
+++ b/toolkit/components/jsdownloads/test/data/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/jsdownloads/test/unit/.eslintrc
rename to toolkit/components/jsdownloads/test/unit/.eslintrc.js
--- a/toolkit/components/jsdownloads/test/unit/.eslintrc
+++ b/toolkit/components/jsdownloads/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/lz4/tests/xpcshell/.eslintrc
rename to toolkit/components/lz4/tests/xpcshell/.eslintrc.js
--- a/toolkit/components/lz4/tests/xpcshell/.eslintrc
+++ b/toolkit/components/lz4/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/mediasniffer/test/unit/.eslintrc
rename to toolkit/components/mediasniffer/test/unit/.eslintrc.js
--- a/toolkit/components/mediasniffer/test/unit/.eslintrc
+++ b/toolkit/components/mediasniffer/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/narrate/.eslintrc
rename to toolkit/components/narrate/.eslintrc.js
--- a/toolkit/components/narrate/.eslintrc
+++ b/toolkit/components/narrate/.eslintrc.js
@@ -1,11 +1,13 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "extends": [
-    "../../.eslintrc"
+    "../../.eslintrc.js"
   ],
 
   "globals": {
     "Components": true,
     "dump": true,
     "Iterator": true
   },
 
@@ -84,9 +86,9 @@
     "space-infix-ops": [1, {"int32Hint": true}],
     "space-unary-ops": [1, { "words": true, "nonwords": false }],
     "spaced-comment": [1, "always"],
     "strict": [2, "global"],
     "use-isnan": 2,
     "valid-typeof": 2,
     "yoda": 2
   }
-}
+};
rename from toolkit/components/narrate/test/.eslintrc
rename to toolkit/components/narrate/test/.eslintrc.js
--- a/toolkit/components/narrate/test/.eslintrc
+++ b/toolkit/components/narrate/test/.eslintrc.js
@@ -1,11 +1,13 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "extends": [
-    "../.eslintrc"
+    "../.eslintrc.js"
   ],
 
   "globals": {
     "is": true,
     "isnot": true,
     "ok": true,
     "NarrateTestUtils": true,
     "content": true,
@@ -13,9 +15,9 @@
     "ContentTask": true,
     "BrowserTestUtils": true,
     "gBrowser": true,
   },
 
   "rules": {
     "mozilla/import-headjs-globals": 1
   }
-}
+};
rename from toolkit/components/osfile/tests/mochi/.eslintrc
rename to toolkit/components/osfile/tests/mochi/.eslintrc.js
--- a/toolkit/components/osfile/tests/mochi/.eslintrc
+++ b/toolkit/components/osfile/tests/mochi/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/osfile/tests/xpcshell/.eslintrc
rename to toolkit/components/osfile/tests/xpcshell/.eslintrc.js
--- a/toolkit/components/osfile/tests/xpcshell/.eslintrc
+++ b/toolkit/components/osfile/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/passwordmgr/.eslintrc
rename to toolkit/components/passwordmgr/.eslintrc.js
--- a/toolkit/components/passwordmgr/.eslintrc
+++ b/toolkit/components/passwordmgr/.eslintrc.js
@@ -1,10 +1,12 @@
-{
-  "extends": "../../.eslintrc",
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../.eslintrc.js",
   "rules": {
     // Require spacing around =>
     "arrow-spacing": 2,
 
     // No newline before open brace for a block
     "brace-style": [2, "1tbs", {"allowSingleLine": true}],
 
     // No space before always a space after a comma
@@ -26,9 +28,9 @@
     "no-unused-vars": [2, {"args": "none", "vars": "local", "varsIgnorePattern": "^(ids|ignored|unused)$"}],
 
     // Always require semicolon at end of statement
     "semi": [2, "always"],
 
     // Require spaces around operators
     "space-infix-ops": 2,
   }
-}
+};
rename from toolkit/components/passwordmgr/test/.eslintrc
rename to toolkit/components/passwordmgr/test/.eslintrc.js
--- a/toolkit/components/passwordmgr/test/.eslintrc
+++ b/toolkit/components/passwordmgr/test/.eslintrc.js
@@ -1,11 +1,13 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "extends": [
-    "../../../../testing/mochitest/mochitest.eslintrc",
-    "../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../testing/mochitest/mochitest.eslintrc.js",
+    "../../../../testing/mochitest/chrome.eslintrc.js"
   ],
   "rules": {
     "brace-style": 0,
     "no-undef": 0,
     "no-unused-vars": 0,
   },
-}
+};
rename from toolkit/components/passwordmgr/test/browser/.eslintrc
rename to toolkit/components/passwordmgr/test/browser/.eslintrc.js
--- a/toolkit/components/passwordmgr/test/browser/.eslintrc
+++ b/toolkit/components/passwordmgr/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/passwordmgr/test/unit/.eslintrc
rename to toolkit/components/passwordmgr/test/unit/.eslintrc.js
--- a/toolkit/components/passwordmgr/test/unit/.eslintrc
+++ b/toolkit/components/passwordmgr/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/perf/.eslintrc
rename to toolkit/components/perf/.eslintrc.js
--- a/toolkit/components/perf/.eslintrc
+++ b/toolkit/components/perf/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../testing/mochitest/chrome.eslintrc"
+    "../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/perfmonitoring/tests/browser/.eslintrc
rename to toolkit/components/perfmonitoring/tests/browser/.eslintrc.js
--- a/toolkit/components/perfmonitoring/tests/browser/.eslintrc
+++ b/toolkit/components/perfmonitoring/tests/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/.eslintrc
rename to toolkit/components/places/tests/.eslintrc.js
--- a/toolkit/components/places/tests/.eslintrc
+++ b/toolkit/components/places/tests/.eslintrc.js
@@ -1,7 +1,9 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/mochitest.eslintrc",
-    "../../../../testing/mochitest/chrome.eslintrc",
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/mochitest/mochitest.eslintrc.js",
+    "../../../../testing/mochitest/chrome.eslintrc.js",
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/bookmarks/.eslintrc
rename to toolkit/components/places/tests/bookmarks/.eslintrc.js
--- a/toolkit/components/places/tests/bookmarks/.eslintrc
+++ b/toolkit/components/places/tests/bookmarks/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/browser/.eslintrc
rename to toolkit/components/places/tests/browser/.eslintrc.js
--- a/toolkit/components/places/tests/browser/.eslintrc
+++ b/toolkit/components/places/tests/browser/.eslintrc.js
@@ -1,6 +1,8 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc",
-    "../../../../../testing/mochitest/mochitest.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js",
+    "../../../../../testing/mochitest/mochitest.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/chrome/.eslintrc
rename to toolkit/components/places/tests/chrome/.eslintrc.js
--- a/toolkit/components/places/tests/chrome/.eslintrc
+++ b/toolkit/components/places/tests/chrome/.eslintrc.js
@@ -1,6 +1,8 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/chrome.eslintrc",
-    "../../../../../testing/mochitest/mochitest.eslintrc"
+    "../../../../../testing/mochitest/chrome.eslintrc.js",
+    "../../../../../testing/mochitest/mochitest.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/expiration/.eslintrc
rename to toolkit/components/places/tests/expiration/.eslintrc.js
--- a/toolkit/components/places/tests/expiration/.eslintrc
+++ b/toolkit/components/places/tests/expiration/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/favicons/.eslintrc
rename to toolkit/components/places/tests/favicons/.eslintrc.js
--- a/toolkit/components/places/tests/favicons/.eslintrc
+++ b/toolkit/components/places/tests/favicons/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/history/.eslintrc
rename to toolkit/components/places/tests/history/.eslintrc.js
--- a/toolkit/components/places/tests/history/.eslintrc
+++ b/toolkit/components/places/tests/history/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/migration/.eslintrc
rename to toolkit/components/places/tests/migration/.eslintrc.js
--- a/toolkit/components/places/tests/migration/.eslintrc
+++ b/toolkit/components/places/tests/migration/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/network/.eslintrc
rename to toolkit/components/places/tests/network/.eslintrc.js
--- a/toolkit/components/places/tests/network/.eslintrc
+++ b/toolkit/components/places/tests/network/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/queries/.eslintrc
rename to toolkit/components/places/tests/queries/.eslintrc.js
--- a/toolkit/components/places/tests/queries/.eslintrc
+++ b/toolkit/components/places/tests/queries/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/unifiedcomplete/.eslintrc
rename to toolkit/components/places/tests/unifiedcomplete/.eslintrc.js
--- a/toolkit/components/places/tests/unifiedcomplete/.eslintrc
+++ b/toolkit/components/places/tests/unifiedcomplete/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/places/tests/unit/.eslintrc
rename to toolkit/components/places/tests/unit/.eslintrc.js
--- a/toolkit/components/places/tests/unit/.eslintrc
+++ b/toolkit/components/places/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/promiseworker/tests/xpcshell/.eslintrc
rename to toolkit/components/promiseworker/tests/xpcshell/.eslintrc.js
--- a/toolkit/components/promiseworker/tests/xpcshell/.eslintrc
+++ b/toolkit/components/promiseworker/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/prompts/test/.eslintrc
rename to toolkit/components/prompts/test/.eslintrc.js
--- a/toolkit/components/prompts/test/.eslintrc
+++ b/toolkit/components/prompts/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/mochitest.eslintrc"
+    "../../../../testing/mochitest/mochitest.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/remotebrowserutils/tests/browser/.eslintrc
rename to toolkit/components/remotebrowserutils/tests/browser/.eslintrc.js
--- a/toolkit/components/remotebrowserutils/tests/browser/.eslintrc
+++ b/toolkit/components/remotebrowserutils/tests/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/satchel/test/.eslintrc
rename to toolkit/components/satchel/test/.eslintrc.js
--- a/toolkit/components/satchel/test/.eslintrc
+++ b/toolkit/components/satchel/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/mochitest.eslintrc"
+    "../../../../testing/mochitest/mochitest.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/satchel/test/browser/.eslintrc
rename to toolkit/components/satchel/test/browser/.eslintrc.js
--- a/toolkit/components/satchel/test/browser/.eslintrc
+++ b/toolkit/components/satchel/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/satchel/test/unit/.eslintrc
rename to toolkit/components/satchel/test/unit/.eslintrc.js
--- a/toolkit/components/satchel/test/unit/.eslintrc
+++ b/toolkit/components/satchel/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/search/tests/xpcshell/.eslintrc
rename to toolkit/components/search/tests/xpcshell/.eslintrc.js
--- a/toolkit/components/search/tests/xpcshell/.eslintrc
+++ b/toolkit/components/search/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/social/test/xpcshell/.eslintrc
rename to toolkit/components/social/test/xpcshell/.eslintrc.js
--- a/toolkit/components/social/test/xpcshell/.eslintrc
+++ b/toolkit/components/social/test/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/sqlite/tests/xpcshell/.eslintrc
rename to toolkit/components/sqlite/tests/xpcshell/.eslintrc.js
--- a/toolkit/components/sqlite/tests/xpcshell/.eslintrc
+++ b/toolkit/components/sqlite/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/startup/tests/browser/.eslintrc
rename to toolkit/components/startup/tests/browser/.eslintrc.js
--- a/toolkit/components/startup/tests/browser/.eslintrc
+++ b/toolkit/components/startup/tests/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/startup/tests/unit/.eslintrc
rename to toolkit/components/startup/tests/unit/.eslintrc.js
--- a/toolkit/components/startup/tests/unit/.eslintrc
+++ b/toolkit/components/startup/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/telemetry/tests/unit/.eslintrc
rename to toolkit/components/telemetry/tests/unit/.eslintrc.js
--- a/toolkit/components/telemetry/tests/unit/.eslintrc
+++ b/toolkit/components/telemetry/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/terminator/tests/xpcshell/.eslintrc
rename to toolkit/components/terminator/tests/xpcshell/.eslintrc.js
--- a/toolkit/components/terminator/tests/xpcshell/.eslintrc
+++ b/toolkit/components/terminator/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/thumbnails/test/.eslintrc
rename to toolkit/components/thumbnails/test/.eslintrc.js
--- a/toolkit/components/thumbnails/test/.eslintrc
+++ b/toolkit/components/thumbnails/test/.eslintrc.js
@@ -1,6 +1,8 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc",
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js",
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/timermanager/tests/unit/.eslintrc
rename to toolkit/components/timermanager/tests/unit/.eslintrc.js
--- a/toolkit/components/timermanager/tests/unit/.eslintrc
+++ b/toolkit/components/timermanager/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/url-classifier/tests/mochitest/.eslintrc
rename to toolkit/components/url-classifier/tests/mochitest/.eslintrc.js
--- a/toolkit/components/url-classifier/tests/mochitest/.eslintrc
+++ b/toolkit/components/url-classifier/tests/mochitest/.eslintrc.js
@@ -1,6 +1,8 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/mochitest.eslintrc",
-    "../../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../../testing/mochitest/mochitest.eslintrc.js",
+    "../../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/url-classifier/tests/unit/.eslintrc
rename to toolkit/components/url-classifier/tests/unit/.eslintrc.js
--- a/toolkit/components/url-classifier/tests/unit/.eslintrc
+++ b/toolkit/components/url-classifier/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/urlformatter/tests/unit/.eslintrc
rename to toolkit/components/urlformatter/tests/unit/.eslintrc.js
--- a/toolkit/components/urlformatter/tests/unit/.eslintrc
+++ b/toolkit/components/urlformatter/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/viewsource/test/.eslintrc
rename to toolkit/components/viewsource/test/.eslintrc.js
--- a/toolkit/components/viewsource/test/.eslintrc
+++ b/toolkit/components/viewsource/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/viewsource/test/browser/.eslintrc
rename to toolkit/components/viewsource/test/browser/.eslintrc.js
--- a/toolkit/components/viewsource/test/browser/.eslintrc
+++ b/toolkit/components/viewsource/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/workerloader/tests/.eslintrc
rename to toolkit/components/workerloader/tests/.eslintrc.js
--- a/toolkit/components/workerloader/tests/.eslintrc
+++ b/toolkit/components/workerloader/tests/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/xulstore/tests/chrome/.eslintrc
rename to toolkit/components/xulstore/tests/chrome/.eslintrc.js
--- a/toolkit/components/xulstore/tests/chrome/.eslintrc
+++ b/toolkit/components/xulstore/tests/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/components/xulstore/tests/xpcshell/.eslintrc
rename to toolkit/components/xulstore/tests/xpcshell/.eslintrc.js
--- a/toolkit/components/xulstore/tests/xpcshell/.eslintrc
+++ b/toolkit/components/xulstore/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/content/tests/browser/.eslintrc
rename to toolkit/content/tests/browser/.eslintrc.js
--- a/toolkit/content/tests/browser/.eslintrc
+++ b/toolkit/content/tests/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/content/tests/chrome/.eslintrc
rename to toolkit/content/tests/chrome/.eslintrc.js
--- a/toolkit/content/tests/chrome/.eslintrc
+++ b/toolkit/content/tests/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/content/tests/unit/.eslintrc
rename to toolkit/content/tests/unit/.eslintrc.js
--- a/toolkit/content/tests/unit/.eslintrc
+++ b/toolkit/content/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/content/tests/widgets/.eslintrc
rename to toolkit/content/tests/widgets/.eslintrc.js
--- a/toolkit/content/tests/widgets/.eslintrc
+++ b/toolkit/content/tests/widgets/.eslintrc.js
@@ -1,6 +1,8 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/mochitest.eslintrc",
-    "../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../testing/mochitest/mochitest.eslintrc.js",
+    "../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/crashreporter/test/browser/.eslintrc
rename to toolkit/crashreporter/test/browser/.eslintrc.js
--- a/toolkit/crashreporter/test/browser/.eslintrc
+++ b/toolkit/crashreporter/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/crashreporter/test/unit/.eslintrc
rename to toolkit/crashreporter/test/unit/.eslintrc.js
--- a/toolkit/crashreporter/test/unit/.eslintrc
+++ b/toolkit/crashreporter/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/crashreporter/test/unit_ipc/.eslintrc
rename to toolkit/crashreporter/test/unit_ipc/.eslintrc.js
--- a/toolkit/crashreporter/test/unit_ipc/.eslintrc
+++ b/toolkit/crashreporter/test/unit_ipc/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/forgetaboutsite/test/browser/.eslintrc
rename to toolkit/forgetaboutsite/test/browser/.eslintrc.js
--- a/toolkit/forgetaboutsite/test/browser/.eslintrc
+++ b/toolkit/forgetaboutsite/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/forgetaboutsite/test/unit/.eslintrc
rename to toolkit/forgetaboutsite/test/unit/.eslintrc.js
--- a/toolkit/forgetaboutsite/test/unit/.eslintrc
+++ b/toolkit/forgetaboutsite/test/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/identity/tests/chrome/.eslintrc
rename to toolkit/identity/tests/chrome/.eslintrc.js
--- a/toolkit/identity/tests/chrome/.eslintrc
+++ b/toolkit/identity/tests/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/identity/tests/unit/.eslintrc
rename to toolkit/identity/tests/unit/.eslintrc.js
--- a/toolkit/identity/tests/unit/.eslintrc
+++ b/toolkit/identity/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/modules/addons/.eslintrc
rename to toolkit/modules/addons/.eslintrc.js
--- a/toolkit/modules/addons/.eslintrc
+++ b/toolkit/modules/addons/.eslintrc.js
@@ -1,12 +1,14 @@
-{
-  "extends": "../../components/extensions/.eslintrc",
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../components/extensions/.eslintrc.js",
 
   "globals": {
     "addEventListener": false,
     "addMessageListener": false,
     "removeEventListener": false,
     "sendAsyncMessage": false,
 
     "initialProcessData": true,
   },
-}
+};
rename from toolkit/modules/subprocess/.eslintrc
rename to toolkit/modules/subprocess/.eslintrc.js
--- a/toolkit/modules/subprocess/.eslintrc
+++ b/toolkit/modules/subprocess/.eslintrc.js
@@ -1,10 +1,12 @@
-{
-  "extends": "../../components/extensions/.eslintrc",
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../components/extensions/.eslintrc.js",
 
   "env": {
     "worker": true,
   },
 
   "globals": {
     "ChromeWorker": false,
     "Components": false,
@@ -18,9 +20,9 @@
     "dump": false,
     "libc": true,
     "unix": true,
   },
 
   "rules": {
     "no-console": 0,
   },
-}
+};
rename from toolkit/modules/subprocess/test/xpcshell/.eslintrc
rename to toolkit/modules/subprocess/test/xpcshell/.eslintrc.js
--- a/toolkit/modules/subprocess/test/xpcshell/.eslintrc
+++ b/toolkit/modules/subprocess/test/xpcshell/.eslintrc.js
@@ -1,3 +1,5 @@
-{
-  "extends": "../../../../../testing/xpcshell/xpcshell.eslintrc",
-}
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
+  "extends": "../../../../../testing/xpcshell/xpcshell.eslintrc.js",
+};
rename from toolkit/modules/tests/browser/.eslintrc
rename to toolkit/modules/tests/browser/.eslintrc.js
--- a/toolkit/modules/tests/browser/.eslintrc
+++ b/toolkit/modules/tests/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/browser.eslintrc"
+    "../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/modules/tests/chrome/.eslintrc
rename to toolkit/modules/tests/chrome/.eslintrc.js
--- a/toolkit/modules/tests/chrome/.eslintrc
+++ b/toolkit/modules/tests/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/modules/tests/mochitest/.eslintrc
rename to toolkit/modules/tests/mochitest/.eslintrc.js
--- a/toolkit/modules/tests/mochitest/.eslintrc
+++ b/toolkit/modules/tests/mochitest/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/mochitest.eslintrc"
+    "../../../../testing/mochitest/mochitest.eslintrc.js"
   ]
-}
+};
rename from toolkit/modules/tests/xpcshell/.eslintrc
rename to toolkit/modules/tests/xpcshell/.eslintrc.js
--- a/toolkit/modules/tests/xpcshell/.eslintrc
+++ b/toolkit/modules/tests/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/mozapps/downloads/tests/chrome/.eslintrc
rename to toolkit/mozapps/downloads/tests/chrome/.eslintrc.js
--- a/toolkit/mozapps/downloads/tests/chrome/.eslintrc
+++ b/toolkit/mozapps/downloads/tests/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/mozapps/downloads/tests/unit/.eslintrc
rename to toolkit/mozapps/downloads/tests/unit/.eslintrc.js
--- a/toolkit/mozapps/downloads/tests/unit/.eslintrc
+++ b/toolkit/mozapps/downloads/tests/unit/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/mozapps/extensions/.eslintrc
rename to toolkit/mozapps/extensions/.eslintrc.js
--- a/toolkit/mozapps/extensions/.eslintrc
+++ b/toolkit/mozapps/extensions/.eslintrc.js
@@ -1,6 +1,8 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "rules": {
     // No using undeclared variables
     "no-undef": 2,
   }
-}
+};
rename from toolkit/mozapps/extensions/test/browser/.eslintrc
rename to toolkit/mozapps/extensions/test/browser/.eslintrc.js
--- a/toolkit/mozapps/extensions/test/browser/.eslintrc
+++ b/toolkit/mozapps/extensions/test/browser/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/mozapps/extensions/test/mochitest/.eslintrc
rename to toolkit/mozapps/extensions/test/mochitest/.eslintrc.js
--- a/toolkit/mozapps/extensions/test/mochitest/.eslintrc
+++ b/toolkit/mozapps/extensions/test/mochitest/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "extends": [
-    "../../../../../testing/mochitest/mochitest.eslintrc"
+    "../../../../../testing/mochitest/mochitest.eslintrc.js"
   ]
-}
+};
rename from toolkit/mozapps/extensions/test/xpcshell/.eslintrc
rename to toolkit/mozapps/extensions/test/xpcshell/.eslintrc.js
--- a/toolkit/mozapps/extensions/test/xpcshell/.eslintrc
+++ b/toolkit/mozapps/extensions/test/xpcshell/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/mozapps/extensions/test/xpinstall/.eslintrc
rename to toolkit/mozapps/extensions/test/xpinstall/.eslintrc.js
--- a/toolkit/mozapps/extensions/test/xpinstall/.eslintrc
+++ b/toolkit/mozapps/extensions/test/xpinstall/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = { // eslint-disable-line no-undef
   "extends": [
-    "../../../../../testing/mochitest/browser.eslintrc"
+    "../../../../../testing/mochitest/browser.eslintrc.js"
   ]
-}
+};
rename from toolkit/mozapps/update/tests/chrome/.eslintrc
rename to toolkit/mozapps/update/tests/chrome/.eslintrc.js
--- a/toolkit/mozapps/update/tests/chrome/.eslintrc
+++ b/toolkit/mozapps/update/tests/chrome/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/mozapps/update/tests/unit_aus_update/.eslintrc
rename to toolkit/mozapps/update/tests/unit_aus_update/.eslintrc.js
--- a/toolkit/mozapps/update/tests/unit_aus_update/.eslintrc
+++ b/toolkit/mozapps/update/tests/unit_aus_update/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/mozapps/update/tests/unit_base_updater/.eslintrc
rename to toolkit/mozapps/update/tests/unit_base_updater/.eslintrc.js
--- a/toolkit/mozapps/update/tests/unit_base_updater/.eslintrc
+++ b/toolkit/mozapps/update/tests/unit_base_updater/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/mozapps/update/tests/unit_service_updater/.eslintrc
rename to toolkit/mozapps/update/tests/unit_service_updater/.eslintrc.js
--- a/toolkit/mozapps/update/tests/unit_service_updater/.eslintrc
+++ b/toolkit/mozapps/update/tests/unit_service_updater/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../../testing/xpcshell/xpcshell.eslintrc"
+    "../../../../../testing/xpcshell/xpcshell.eslintrc.js"
   ]
-}
+};
rename from toolkit/profile/test/.eslintrc
rename to toolkit/profile/test/.eslintrc.js
--- a/toolkit/profile/test/.eslintrc
+++ b/toolkit/profile/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../testing/mochitest/chrome.eslintrc"
+    "../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/themes/osx/mochitests/.eslintrc
rename to toolkit/themes/osx/mochitests/.eslintrc.js
--- a/toolkit/themes/osx/mochitests/.eslintrc
+++ b/toolkit/themes/osx/mochitests/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../../testing/mochitest/chrome.eslintrc"
+    "../../../../testing/mochitest/chrome.eslintrc.js"
   ]
-}
+};
rename from toolkit/xre/test/.eslintrc
rename to toolkit/xre/test/.eslintrc.js
--- a/toolkit/xre/test/.eslintrc
+++ b/toolkit/xre/test/.eslintrc.js
@@ -1,5 +1,7 @@
-{
+"use strict";
+
+module.exports = {
   "extends": [
-    "../../../testing/mochitest/mochitest.eslintrc"
+    "../../../testing/mochitest/mochitest.eslintrc.js"
   ]
-}
+};
rename from tools/lint/eslint/eslint-plugin-mozilla/lib/rules/.eslintrc
rename to tools/lint/eslint/eslint-plugin-mozilla/lib/rules/.eslintrc.js
--- a/tools/lint/eslint/eslint-plugin-mozilla/lib/rules/.eslintrc
+++ b/tools/lint/eslint/eslint-plugin-mozilla/lib/rules/.eslintrc.js
@@ -1,18 +1,20 @@
+"use strict";
+
 /**
  * Based on npm coding standards at https://docs.npmjs.com/misc/coding-style.
  *
  * The places we differ from the npm coding style:
  *   - Commas should be at the end of a line.
  *   - Always use semicolons.
  *   - Functions should not have whitespace before params.
  */
 
-{
+module.exports = {
   "env": {
     "node": true
   },
 
   "rules": {
     "brace-style": [2, "1tbs"],
     "camelcase": 2,
     "comma-dangle": [2, "never"],
@@ -41,9 +43,9 @@
     "DTRACE_HTTP_CLIENT_REQUEST": true,
     "DTRACE_HTTP_CLIENT_RESPONSE": true,
     "DTRACE_HTTP_SERVER_REQUEST": true,
     "DTRACE_HTTP_SERVER_RESPONSE": true,
     "DTRACE_NET_SERVER_CONNECTION": true,
     "DTRACE_NET_STREAM_END": true,
     "Intl": true,
   },
-}
+};