ESLint version 3.19.0 represents a minor update over its predecessor, version 3.18.0, focusing primarily on refinements and dependency updates rather than groundbreaking new features. The core functionality, an AST-based pattern checker for JavaScript remains consistent, offering developers a reliable tool for code linting and style enforcement.
A notable distinction lies in the updated dependency versions within the devDependencies section. Several key tools have been bumped to newer releases, including ejs, karma, mocha, semver, cheerio, esprima, istanbul, babel-polyfill, eslint-release, eslint-plugin-node, phantomjs-prebuilt, babel-preset-es2015, and karma-mocha-reporter. These updates likely incorporate bug fixes, performance improvements, and compatibility enhancements with the evolving JavaScript ecosystem. While the dependencies remain mainly the same, ensuring a consistent core experience, the updated developer dependencies suggest a focus on improving the development workflow and testing infrastructure for ESLint itself.
Developers upgrading from 3.18.0 to 3.19.0 can expect a smoother development experience, improved compatibility with the latest tooling, and potentially enhanced linting performance due to the updated dependencies. The updates to esprima and babel-preset-es2015 particularly hint at improved ES2015+ support. However, the core ESLint usage and configuration should remain largely unchanged, minimizing any disruptive upgrade challenges. The release date difference of roughly two weeks also suggests a focus on rapidly addressing issues and incorporating incremental improvements.
All the vulnerabilities related to the version 3.19.0 of the package
Prototype Pollution in Ajv
An issue was discovered in ajv.validate() in Ajv (aka Another JSON Schema Validator) 6.12.2. A carefully crafted JSON schema could be provided that allows execution of other code by prototype pollution. (While untrusted schemas are recommended against, the worst case of an untrusted schema should be a denial of service, not execution of code.)
Improper Privilege Management in shelljs
shelljs is vulnerable to Improper Privilege Management
Improper Privilege Management in shelljs
Output from the synchronous version of shell.exec()
may be visible to other users on the same system. You may be affected if you execute shell.exec()
in multi-user Mac, Linux, or WSL environments, or if you execute shell.exec()
as the root user.
Other shelljs functions (including the asynchronous version of shell.exec()
) are not impacted.
Patched in shelljs 0.8.5
Recommended action is to upgrade to 0.8.5.
https://huntr.dev/bounties/50996581-c08e-4eed-a90e-c0bac082679c/
If you have any questions or comments about this advisory: