`manage_node_deps.py` was changed in https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2259834 to add line endings at the end of the package.json file However, `npm run install-deps` was not rerun to add the line endings. To prevent future CLs that add deps to include the line ending changes, fix them in this CL. R=mathias@chromium.org Change-Id: Id4ee0003520c4aa0cb55494cdf64df57e31a86d7 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2263952 Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org> Commit-Queue: Mathias Bynens <mathias@chromium.org> Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org> Reviewed-by: Mathias Bynens <mathias@chromium.org>
eslint-plugin-rulesdir
Allows a local directory containing ESLint rules directory to be easily used. This is a substitute for the --rulesdir option that can be used without a command-line flag.
Experimental: This plugin is currently a proof-of-concept. Its API is likely to change in the future.
Installation
You'll first need to install ESLint:
$ npm i eslint --save-dev
Next, install eslint-plugin-rulesdir:
$ npm install eslint-plugin-rulesdir --save-dev
Note: If you installed ESLint globally (using the -g flag) then you must also install eslint-plugin-rulesdir globally.
Usage
To use this plugin, you must load it manually first and set its RULES_DIR property to a path. The path is resolved from the current working directory, and indicates where you would like the plugin to load your rules from. This is easiest if you use a JavaScript config file (.eslintrc.js), and use a local installation of ESLint.
// .eslintrc.js
const rulesDirPlugin = require('eslint-plugin-rulesdir');
rulesDirPlugin.RULES_DIR = 'tools/eslint-rules'; // (an example folder where your rules might be stored)
Then you should add rulesdir to the plugins section of your .eslintrc.js file.
{
plugins: [
'rulesdir'
]
}
Finally, you can configure your local rules, prefixed with rulesdir/.
{
rules: {
//
'rulesdir/my-internal-foo-rule': 'error',
'rulesdir/my-internal-bar-rule': ['warn', 2]
}
}
All of the rules from your configured rules directory will be available. In this example, we assumed there were rule files in tools/eslint-rules/my-internal-foo-rule.js and tools/eslint-rules/my-internal-bar-rule.js.