From 36ab6611df7f1cfd7045baa8d41ab40328c13fb3 Mon Sep 17 00:00:00 2001 From: Mark Banner Date: Fri, 24 Mar 2023 19:35:25 +0000 Subject: [PATCH] Bug 1824173 - Enable ESLint configuration valid-jsdocs across the tree, disabling for currently failing locations. r=mossop,webcompat-reviewers,extension-reviewers,credential-management-reviewers,denschub,dimi,robwu Depends on D173450 Differential Revision: https://phabricator.services.mozilla.com/D173451 --- .eslintrc.js | 120 ++++++++++++++++++ browser/components/migration/.eslintrc.js | 2 +- browser/components/pagedata/.eslintrc.js | 2 +- browser/components/places/.eslintrc.js | 2 +- browser/components/search/.eslintrc.js | 2 +- browser/components/urlbar/.eslintrc.js | 2 +- browser/extensions/formautofill/.eslintrc.js | 2 - .../extensions/report-site-issue/.eslintrc.js | 2 - docs/conf.py | 2 + security/.eslintrc.js | 2 - .../docker/periodic-updates/.eslintrc.js | 2 - toolkit/components/extensions/.eslintrc.js | 2 - toolkit/components/formautofill/.eslintrc.js | 2 - toolkit/components/satchel/.eslintrc.js | 2 - toolkit/components/search/.eslintrc.js | 2 +- 15 files changed, 128 insertions(+), 20 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 371c45e41a40..999a04453b8f 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -230,6 +230,126 @@ module.exports = { "mozilla/no-cu-reportError": "off", }, }, + { + files: ["**"], + excludedFiles: [ + "accessible/tests/**", + "browser/actors/**", + "browser/base/content/**", + "browser/components/Browser*", + "browser/components/aboutlogins/**", + "browser/components/attribution/**", + "browser/components/colorways/**", + "browser/components/customizableui/**", + "browser/components/downloads/**", + "browser/components/enterprisepolicies/**", + "browser/components/firefoxview/tests/browser/head.js", + "browser/components/firefoxview/tests/browser/FirefoxViewTestUtils.sys.mjs", + "browser/components/ion/content/ion.js", + "browser/components/newtab/**", + "browser/components/originattributes/test/browser/**", + "browser/components/pocket/content/pkt*", + "browser/components/preferences/**", + "browser/components/privatebrowsing/**", + "browser/components/prompts/PromptCollection.sys.mjs", + "browser/components/protections/content/*-card.mjs", + "browser/components/protocolhandler/WebProtocolHandlerRegistrar.sys.mjs", + "browser/components/safebrowsing/content/test/**", + "browser/components/screenshots/**", + "browser/components/sessionstore/**", + "browser/components/storybook/.storybook/**", + "browser/components/syncedtabs/**", + "browser/components/tests/browser/**", + "browser/components/textrecognition/textrecognition.mjs", + "browser/components/touchbar/tests/browser/browser_touchbar_searchrestrictions.js", + "browser/components/translation/**", + "browser/components/uitour/UITour*", + "browser/extensions/pictureinpicture/**", + "browser/extensions/screenshots/**", + "browser/modules/**", + "browser/themes/BuiltInThemes.sys.mjs", + "browser/tools/mozscreenshots/**", + "devtools/**", + "docshell/base/URIFixup.sys.mjs", + "dom/**", + "editor/**", + "extensions/permissions/test/PermissionTestUtils.jsm", + "gfx/layers/apz/test/mochitest/apz_test_native_event_utils.js", + "image/test/**", + "intl/**", + "js/xpconnect/**", + "layout/**", + "mobile/android/**", + "modules/**", + "netwerk/**", + "parser/htmlparser/**", + "remote/**", + "services/**", + "storage/**", + "testing/**", + "toolkit/actors/**", + "toolkit/components/aboutmemory/**", + "toolkit/components/aboutperformance/**", + "toolkit/components/aboutprocesses/content/aboutProcesses.js", + "toolkit/components/antitracking/**", + "toolkit/components/asyncshutdown/**", + "toolkit/components/backgroundtasks/BackgroundTasks*.sys.mjs", + "toolkit/components/cleardata/**", + "toolkit/components/contentprefs/ContentPrefService2.sys.mjs", + "toolkit/components/cookiebanners/**", + "toolkit/components/corroborator/Corroborate.sys.mjs", + "toolkit/components/crashes/**", + "toolkit/components/crashmonitor/CrashMonitor.sys.mjs", + "toolkit/components/credentialmanagement/IdentityCredentialPromptService.sys.mjs", + "toolkit/components/downloads/**", + "toolkit/components/featuregates/FeatureGate*.*", + "toolkit/components/forgetaboutsite/test/unit/test_removeDataFromDomain.js", + "toolkit/components/glean/tests/browser/**", + "toolkit/components/kvstore/kvstore.sys.mjs", + "toolkit/components/lz4/lz4.js", + "toolkit/components/messaging-system/**", + "toolkit/components/mozintl/mozIntl.sys.mjs", + "toolkit/components/narrate/Narrator.jsm", + "toolkit/components/nimbus/**", + "toolkit/components/normandy/**", + "toolkit/components/osfile/**", + "toolkit/components/passwordmgr/**", + "toolkit/components/pdfjs/**", + "toolkit/components/pictureinpicture/**", + "toolkit/components/places/**", + "toolkit/components/printing/content/print*.*", + "toolkit/components/processtools/tests/browser/browser_test_powerMetrics.js", + "toolkit/components/promiseworker/**/PromiseWorker.*", + "toolkit/components/prompts/**", + "toolkit/components/reader/**", + "toolkit/components/reputationservice/test/unit/test_app_rep_windows.js", + "toolkit/components/taskscheduler/TaskScheduler*.*", + "toolkit/components/telemetry/**", + "toolkit/components/thumbnails/**", + "toolkit/components/timermanager/UpdateTimerManager.*", + "toolkit/components/translation/LanguageDetector.*", + "toolkit/components/translations/**", + "toolkit/components/url-classifier/**", + "toolkit/components/utils/**", + "toolkit/components/viewsource/**", + "toolkit/components/windowwatcher/**", + "toolkit/components/workerloader/require.js", + "toolkit/content/**", + "toolkit/crashreporter/**", + "toolkit/modules/**", + "toolkit/mozapps/downloads/**", + "toolkit/mozapps/extensions/**", + "toolkit/mozapps/handling/**", + "toolkit/mozapps/update/**", + "toolkit/profile/test/test_create_profile.xhtml", + "tools/code-coverage/tests/mochitest/test_coverage_specialpowers.html", + "tools/lint/eslint/**", + "tools/profiler/tests/**", + "uriloader/**", + "widget/tests/window_composition_text_querycontent.xhtml", + ], + extends: ["plugin:mozilla/valid-jsdoc"], + }, { files: ["layout/**"], rules: { diff --git a/browser/components/migration/.eslintrc.js b/browser/components/migration/.eslintrc.js index 053eb6ade777..236a559d13f0 100644 --- a/browser/components/migration/.eslintrc.js +++ b/browser/components/migration/.eslintrc.js @@ -5,7 +5,7 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/require-jsdoc", "plugin:mozilla/valid-jsdoc"], + extends: ["plugin:mozilla/require-jsdoc"], rules: { "block-scoped-var": "error", complexity: ["error", { max: 22 }], diff --git a/browser/components/pagedata/.eslintrc.js b/browser/components/pagedata/.eslintrc.js index ed4d7d475804..8ead689bccdc 100644 --- a/browser/components/pagedata/.eslintrc.js +++ b/browser/components/pagedata/.eslintrc.js @@ -5,7 +5,7 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/require-jsdoc", "plugin:mozilla/valid-jsdoc"], + extends: ["plugin:mozilla/require-jsdoc"], rules: { "mozilla/var-only-at-top-level": "error", diff --git a/browser/components/places/.eslintrc.js b/browser/components/places/.eslintrc.js index 96c5e7241c01..9aafb4a214b6 100644 --- a/browser/components/places/.eslintrc.js +++ b/browser/components/places/.eslintrc.js @@ -5,5 +5,5 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/require-jsdoc", "plugin:mozilla/valid-jsdoc"], + extends: ["plugin:mozilla/require-jsdoc"], }; diff --git a/browser/components/search/.eslintrc.js b/browser/components/search/.eslintrc.js index 327b0419c157..39079432e749 100644 --- a/browser/components/search/.eslintrc.js +++ b/browser/components/search/.eslintrc.js @@ -5,7 +5,7 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/require-jsdoc", "plugin:mozilla/valid-jsdoc"], + extends: ["plugin:mozilla/require-jsdoc"], rules: { "mozilla/var-only-at-top-level": "error", diff --git a/browser/components/urlbar/.eslintrc.js b/browser/components/urlbar/.eslintrc.js index ed4d7d475804..8ead689bccdc 100644 --- a/browser/components/urlbar/.eslintrc.js +++ b/browser/components/urlbar/.eslintrc.js @@ -5,7 +5,7 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/require-jsdoc", "plugin:mozilla/valid-jsdoc"], + extends: ["plugin:mozilla/require-jsdoc"], rules: { "mozilla/var-only-at-top-level": "error", diff --git a/browser/extensions/formautofill/.eslintrc.js b/browser/extensions/formautofill/.eslintrc.js index b6ff078b57de..f290c1b3c1bf 100644 --- a/browser/extensions/formautofill/.eslintrc.js +++ b/browser/extensions/formautofill/.eslintrc.js @@ -5,8 +5,6 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/valid-jsdoc"], - rules: { // Rules from the mozilla plugin "mozilla/balanced-listeners": "error", diff --git a/browser/extensions/report-site-issue/.eslintrc.js b/browser/extensions/report-site-issue/.eslintrc.js index 32453d3f0ffe..13b953ef04dc 100644 --- a/browser/extensions/report-site-issue/.eslintrc.js +++ b/browser/extensions/report-site-issue/.eslintrc.js @@ -5,8 +5,6 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/valid-jsdoc"], - rules: { // Rules from the mozilla plugin "mozilla/balanced-listeners": "error", diff --git a/docs/conf.py b/docs/conf.py index 3781a2d3cf66..bb3a6381d389 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -51,6 +51,8 @@ extensions = [ # JSDoc must run successfully for dirs specified, so running # tree-wide (the default) will not work currently. +# When adding more paths to this list, please ensure that they are not +# excluded from valid-jsdoc in the top-level .eslintrc.js. js_source_path = [ "../browser/components/extensions", "../browser/components/migration", diff --git a/security/.eslintrc.js b/security/.eslintrc.js index c8b766d12082..3709eff7f831 100644 --- a/security/.eslintrc.js +++ b/security/.eslintrc.js @@ -5,8 +5,6 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/valid-jsdoc"], - rules: { // Enforce return statements in callbacks of array methods. "array-callback-return": "error", diff --git a/taskcluster/docker/periodic-updates/.eslintrc.js b/taskcluster/docker/periodic-updates/.eslintrc.js index 15d7603afd56..9828adaa40f0 100644 --- a/taskcluster/docker/periodic-updates/.eslintrc.js +++ b/taskcluster/docker/periodic-updates/.eslintrc.js @@ -5,8 +5,6 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/valid-jsdoc"], - globals: { // JS files in this folder are commonly xpcshell scripts where |arguments| // is defined in the global scope. diff --git a/toolkit/components/extensions/.eslintrc.js b/toolkit/components/extensions/.eslintrc.js index 523cd9c41abb..f62ff67ff069 100644 --- a/toolkit/components/extensions/.eslintrc.js +++ b/toolkit/components/extensions/.eslintrc.js @@ -5,8 +5,6 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/valid-jsdoc"], - globals: { // These are defined in the WebExtension script scopes by ExtensionCommon.jsm Cc: true, diff --git a/toolkit/components/formautofill/.eslintrc.js b/toolkit/components/formautofill/.eslintrc.js index 12bf577565d3..5a84c2c3e0a2 100644 --- a/toolkit/components/formautofill/.eslintrc.js +++ b/toolkit/components/formautofill/.eslintrc.js @@ -5,8 +5,6 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/valid-jsdoc"], - rules: { // Rules from the mozilla plugin "mozilla/balanced-listeners": "error", diff --git a/toolkit/components/satchel/.eslintrc.js b/toolkit/components/satchel/.eslintrc.js index b0e6e2869dd4..c0e875d5cb35 100644 --- a/toolkit/components/satchel/.eslintrc.js +++ b/toolkit/components/satchel/.eslintrc.js @@ -5,8 +5,6 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/valid-jsdoc"], - rules: { "mozilla/balanced-listeners": "error", "mozilla/var-only-at-top-level": "error", diff --git a/toolkit/components/search/.eslintrc.js b/toolkit/components/search/.eslintrc.js index 96c5e7241c01..9aafb4a214b6 100644 --- a/toolkit/components/search/.eslintrc.js +++ b/toolkit/components/search/.eslintrc.js @@ -5,5 +5,5 @@ "use strict"; module.exports = { - extends: ["plugin:mozilla/require-jsdoc", "plugin:mozilla/valid-jsdoc"], + extends: ["plugin:mozilla/require-jsdoc"], };