Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
eslint-plugin-clean-code
Advanced tools
Clean code ESLint plugin
You'll first need to install ESLint:
$ npm install --save-dev eslint
Next, install eslint-plugin-clean-code
:
$ npm install --save-dev eslint-plugin-clean-code
Note: If you installed ESLint globally (using the -g
flag) then you must also install eslint-plugin-clean-code
globally.
Add clean-code
to the plugins section of your .eslintrc
configuration file. You can omit the eslint-plugin-
prefix:
{
"plugins": [
"clean-code"
]
}
Then configure the rules you want to use under the rules section.
{
"rules": {
"clean-code/feature-envy": 2
}
}
| Rule name | Description |
--------------------------------------------------------------------------------------------------------
| feature-envy | Reports the "Feature Envy" code smell. Feature envy is defined as occurring when |
| | a method calls methods on another class three or more times. Feature envy is |
| | often an indication that functionality is located in the wrong class. |
Allow end-user configuration of object name/class for which feature envy is not reported
Chain of 'instanceof' checks
Reports any chains of if-else statements all of whose conditions are instanceof expressions or class equality
expressions (e.g. comparison with String.class). Such constructions usually indicate a failure of object-oriented
design, which dictates that such type-based dispatch should be done via polymorphic method calls rather than
explicit chains of type tests.
'if' statement with too many branches
Reports if statements with too many branches. Such statements may be confusing, and are often the sign of
inadequate levels of design abstraction.
'switch' statement outside of factory class/method
Method call violates Law of Demeter
Overly complex boolean expression
Feel free to contribute to any of above Todos or supply your own clean code rule not given in Todos.
FAQs
Clean code ESLint plugin
The npm package eslint-plugin-clean-code receives a total of 467 weekly downloads. As such, eslint-plugin-clean-code popularity was classified as not popular.
We found that eslint-plugin-clean-code demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.