What is eslint-plugin-only-warn?
The eslint-plugin-only-warn package is an ESLint plugin that changes all rules to emit warnings instead of errors. This can be useful in development environments where you want to be notified of potential issues without breaking the build process.
What are eslint-plugin-only-warn's main functionalities?
Convert all ESLint errors to warnings
By adding 'only-warn' to the plugins array in your ESLint configuration, all rules that would normally trigger errors will instead trigger warnings. This helps in maintaining a smoother development workflow by not breaking the build due to linting errors.
{
"plugins": ["only-warn"]
}
0
eslint-plugin-only-warn

Installation
You'll first need to install ESLint:
$ npm i eslint --save-dev
Next, install eslint-plugin-only-warn
:
$ npm install eslint-plugin-only-warn --save-dev
Note: If you installed ESLint globally (using the -g
flag) then you must also install eslint-plugin-only-warn
globally.
Usage
Add only-warn
to the plugins section of your .eslintrc
configuration file:
{
"plugins": ["only-warn"]
}
Add --max-warnings=0
to the lint script in your package.json.
"lint": "eslint --max-warnings=0 ...",
This will make eslint cli report an errorcode which can be detected in git hook or CI pipeline.
Tip: Use husky and lint-staged te prevent committing eslint warnings.
Why only warnings?
- Don't waste time thinking or discussing about if it should be an error or a warning, focus on enabling of disabling a rule
- Warnings look different in editors, this allows you to quickly see that some tweaking is required, but your code still runs (eslint rules generally don't block the code from executing and fatal errors are still reported as error)
- Prevents noise, disallowing warnings to be committed in a codebase prevents clutter in the output of eslint (use special eslint comments for the instances when you need an exception to the rules)