Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
eslint-watch
Advanced tools
eslint-watch is a command line tool that provides a convenient way to run ESLint in watch mode. It allows developers to automatically lint their code as they make changes, providing immediate feedback and helping to maintain code quality.
Watch Mode
This feature allows you to run ESLint in watch mode on the 'src' directory. It will automatically re-run ESLint whenever a file in the 'src' directory changes.
npx esw -w src
Custom Formatter
This feature allows you to specify a custom formatter for the ESLint output. In this example, the 'stylish' formatter is used to format the linting results.
npx esw -w src -f stylish
Fix on Save
This feature enables ESLint to automatically fix problems in your code whenever a file is saved. The '--fix' flag tells ESLint to apply fixes for any issues it finds.
npx esw -w src --fix
ESLint is the core linting tool that eslint-watch builds upon. While ESLint itself does not provide a watch mode, it is the primary tool for linting JavaScript code and can be used with various plugins and configurations.
gulp-eslint is a Gulp plugin for ESLint. It allows you to integrate ESLint into your Gulp build process, providing similar functionality to eslint-watch but within the context of a Gulp task runner.
eslint-loader is a Webpack loader that integrates ESLint into the Webpack build process. It allows you to lint your code as part of the Webpack build, providing similar functionality to eslint-watch but within the context of a Webpack build pipeline.
Don't want to import Webpack, Grunt, or some other task package into your project? Then this is the tool for you. Eslint Watch is a simple command line tool that wraps Eslint. Eslint Watch provides file watching and command line improvements to the currently existing Eslint command line interface. All commands that Eslint offers can be used with the addition of a watch command and a couple new templating views. Don't believe me? Checkout the code or some of the features below!
To use this tool we require eslint to be installed on your project. The versions supported are:
"eslint": ">=8 <9.0.0"
node >= 12.0.0 <= LTS
Non LTS versions will have limited support.To run eslint-watch without the global install, make an npm script.
npm i -g eslint eslint-watch
or npm i -D eslint eslint-watch
yarn global add eslint eslint-watch
or yarn add -D eslint eslint-watch
enter
to rerun directory lint while watchingEslint-Watch replaces only a few commands that it needs to take control over. All other commands are forwarded to Eslint unmodified. Please refer to their help text for full command support as the one provided below might not be up to date with the latest Eslint changes.
esw [options] [file.js ...] [dir ...]
ESW Options:
-h, --help Show help
-w, --watch Enable file watch
--changed Enables single file linting while watch is enabled
--clear Clear terminal when running lint
-v, --version Prints Eslint-Watch Version
--versions Prints Eslint-Watch and Eslint Versions
--watch-ignore RegExp Regex string of folders to ignore when watching - default:
/.git|node_modules|bower_components|.eslintcache/
--watch-delay Int Delay(ms) for watcher to wait to trigger re-lint - default: 300
Basic configuration:
--ext [String] Specify JavaScript file extensions - default: .js
--no-eslintrc Disable use of configuration from .eslintrc.*
-c, --config path::String Use this configuration, overriding .eslintrc.* config options if present
--env [String] Specify environments
--global [String] Define global variables
--parser String Specify the parser to be used
--parser-options Object Specify parser options
--resolve-plugins-relative-to path::String A folder where plugins should be resolved from CWD by default
Specifying rules and plugins:
--rulesdir [path::String] Use additional rules from this directory
--plugin [String] Specify plugins
--rule Object Specify rules
Fixing problems:
--fix Automatically fix problems
--fix-dry-run Automatically fix problems without saving the changes to the file system
--fix-type Array Specify the types of fixes to apply (directive problem, suggestion, layout)
Ignoring files:
--ignore-path path::String Specify path of ignore file
--no-ignore Disable use of ignore files and patterns
--ignore-pattern [String] Pattern of files to ignore (in addition to those in .eslintignore)
Using stdin:
--stdin Lint code provided on <STDIN> - default: false
--stdin-filename String Specify filename to process STDIN as
Handling warnings:
--quiet Report errors only - default: false
--max-warnings Int Number of warnings to trigger nonzero exit code - default: -1
Output:
-o, --output-file path::String Specify file to write report to
-f, --format String Use a specific output format - default: stylish
--color, --no-color Force enabling/disabling of color
Inline configuration comments:
--no-inline-config Prevent comments from changing config or rules
--report-unused-disable-directives Adds reported errors for unused eslint-disable directives
Caching:
--cache Only check changed files - default: false
--cache-file path::String Path to the cache file. Deprecated: use --cache-location - default: .eslintcache
--cache-location path::String Path to the cache file or directory
--cache-strategy String Strategy to use for detecting changed files in the cache - either: metadata or content - default:
metadata
Miscellaneous:
--init Run config initialization wizard - default: false
--env-info Output execution environment information - default: false
--no-error-on-unmatched-pattern Prevent errors when pattern is unmatched
--exit-on-fatal-error Exit with exit code 2 in case of fatal error - default: false
--debug Output debugging information
--print-config path::String Print the configuration for the given file
Eslint-Watch uses chokidar
under the hood to watch for changes. Chokidar can be configured to poll for changes (this might be necessary if you are running Eslint-Watch inside a VM or Container) by setting the CHOKIDAR_USEPOLLING
environment variable to true
.
Donate:
(Ƀitcoin): 13V7iDxBhnFASw7avGGRk64ExDGTirhx37
(PayPal): https://www.paypal.me/rizowski
FAQs
Run eslint with watch mode
The npm package eslint-watch receives a total of 166,454 weekly downloads. As such, eslint-watch popularity was classified as popular.
We found that eslint-watch 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.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.