From 1b8a37fd2451e584d163b82ce2cb7763b0d115f1 Mon Sep 17 00:00:00 2001 From: Victor Porof Date: Fri, 7 Jun 2019 14:20:09 +0000 Subject: [PATCH] Bug 1556013 - Add prettier to the top-level eslint config, r=Standard8 Differential Revision: https://phabricator.services.mozilla.com/D33303 --HG-- extra : moz-landing-system : lando --- .eslintignore | 11 --- .prettierignore | 93 +++++++++++++++++++ .../lib/configs/recommended.js | 4 + .../eslint-plugin-mozilla/package-lock.json | 2 +- .../eslint/eslint-plugin-mozilla/package.json | 7 +- 5 files changed, 103 insertions(+), 14 deletions(-) create mode 100644 .prettierignore diff --git a/.eslintignore b/.eslintignore index c363e2cfee94..8dfcdd939984 100644 --- a/.eslintignore +++ b/.eslintignore @@ -139,17 +139,6 @@ devtools/client/debugger/packages/**/fixtures/** devtools/client/debugger/node_modules devtools/client/debugger/out -# Ignore devtools debugger files -# Keep in sync with devtools/client/debugger/.prettierignore -devtools/client/debugger/src/workers/parser/tests/fixtures/functionNames.js -devtools/client/debugger/src/workers/parser/tests/fixtures/scopes/*.js -devtools/client/debugger/src/workers/parser/tests/fixtures/pause/*.js -devtools/client/debugger/src/test/mochitest/examples/babel/polyfill-bundle.js -devtools/client/debugger/src/test/mochitest/examples/babel/fixtures/*/input.js -devtools/client/debugger/src/test/mochitest/examples/babel/fixtures/*/output.js -devtools/client/debugger/src/test/mochitest/examples/babel/fixtures/*/output.js.map -devtools/client/debugger/src/test/mochitest/examples/ember/quickstart - # Ignore devtools debugger files which aren't intended for linting, and also # aren't included in any .eslintignore or .prettierignore file. # See https://github.com/firefox-devtools/debugger/blob/master/package.json#L24 diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 000000000000..c2e5b7789d12 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,93 @@ +# This list automatically picks up exclusions from .eslintignore + +# Ignore all top-level directories for now. +accessible/** +browser/** +build/** +caps/** +chrome/** +config/** +db/** +docshell/** +dom/** +editor/** +extensions/** +gfx/** +gradle/** +hal/** +image/** +intl/** +ipc/** +js/** +layout/** +media/** +memory/** +mfbt/** +mobile/** +modules/** +mozglue/** +netwerk/** +node_modules/** +nsprpub/** +other-licenses/** +parser/** +python/** +remote/** +security/** +services/** +servo/** +startupcache/** +storage/** +taskcluster/** +testing/** +third_party/** +toolkit/** +tools/** +uriloader/** +view/** +widget/** +xpcom/** +xpfe/** + +# Ignore all devtools directories for now, except the debugger. +devtools/client/*.js +devtools/client/aboutdebugging/** +devtools/client/aboutdebugging-new/** +devtools/client/accessibility/** +devtools/client/application/** +devtools/client/bin/** +devtools/client/dom/** +devtools/client/framework/** +devtools/client/inspector/** +devtools/client/jsonview/** +devtools/client/locales/** +devtools/client/memory/** +devtools/client/netmonitor/** +devtools/client/performance/** +devtools/client/performance-new/** +devtools/client/preferences/** +devtools/client/responsive.html/** +devtools/client/scratchpad/** +devtools/client/shared/** +devtools/client/storage/** +devtools/client/styleeditor/** +devtools/client/themes/** +devtools/client/webconsole/** +devtools/client/webide/** +devtools/client/webreplay/** +devtools/docs/** +devtools/platform/** +devtools/server/** +devtools/shared/** +devtools/startup/** + +# Ignore devtools debugger files +# Keep in sync with devtools/client/debugger/.prettierignore +devtools/client/debugger/src/workers/parser/tests/fixtures/functionNames.js +devtools/client/debugger/src/workers/parser/tests/fixtures/scopes/*.js +devtools/client/debugger/src/workers/parser/tests/fixtures/pause/*.js +devtools/client/debugger/src/test/mochitest/examples/babel/polyfill-bundle.js +devtools/client/debugger/src/test/mochitest/examples/babel/fixtures/*/input.js +devtools/client/debugger/src/test/mochitest/examples/babel/fixtures/*/output.js +devtools/client/debugger/src/test/mochitest/examples/babel/fixtures/*/output.js.map +devtools/client/debugger/src/test/mochitest/examples/ember/quickstart diff --git a/tools/lint/eslint/eslint-plugin-mozilla/lib/configs/recommended.js b/tools/lint/eslint/eslint-plugin-mozilla/lib/configs/recommended.js index 01ed1c1ca0d6..f462c3809ec9 100644 --- a/tools/lint/eslint/eslint-plugin-mozilla/lib/configs/recommended.js +++ b/tools/lint/eslint/eslint-plugin-mozilla/lib/configs/recommended.js @@ -84,6 +84,7 @@ module.exports = { "fetch-options", "mozilla", "no-unsanitized", + "prettier", ], // When adding items to this file please check for effects on all of toolkit @@ -341,6 +342,9 @@ module.exports = { // Prohibit blank lines at the beginning and end of blocks. "padded-blocks": ["error", "never"], + // Formatting. + "prettier/prettier": "error", + // Require double-quotes everywhere, except where quotes are escaped // or template literals are used. "quotes": ["error", "double", { diff --git a/tools/lint/eslint/eslint-plugin-mozilla/package-lock.json b/tools/lint/eslint/eslint-plugin-mozilla/package-lock.json index 2af1f14d2099..6a8096377252 100644 --- a/tools/lint/eslint/eslint-plugin-mozilla/package-lock.json +++ b/tools/lint/eslint/eslint-plugin-mozilla/package-lock.json @@ -1,6 +1,6 @@ { "name": "eslint-plugin-mozilla", - "version": "1.2.1", + "version": "1.3.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/tools/lint/eslint/eslint-plugin-mozilla/package.json b/tools/lint/eslint/eslint-plugin-mozilla/package.json index 9f878b0581f1..bf90a8df3487 100644 --- a/tools/lint/eslint/eslint-plugin-mozilla/package.json +++ b/tools/lint/eslint/eslint-plugin-mozilla/package.json @@ -1,6 +1,6 @@ { "name": "eslint-plugin-mozilla", - "version": "1.2.1", + "version": "1.3.0", "description": "A collection of rules that help enforce JavaScript coding standard in the Mozilla project.", "keywords": [ "eslint", @@ -30,7 +30,10 @@ }, "peerDependencies": { "eslint": "^5.0.1", - "eslint-plugin-no-unsanitized": "^3.0.0" + "eslint-config-prettier": "^4.2.0", + "eslint-plugin-prettier": "^3.0.1", + "eslint-plugin-no-unsanitized": "^3.0.0", + "prettier": "^1.17.0" }, "engines": { "node": ">=6.9.1"