ESLint version 2.12.0 is a minor release following version 2.11.1, offering incremental improvements and bug fixes for JavaScript code linting. Both versions share the same core functionality: analyzing JavaScript code based on Abstract Syntax Trees (AST) to identify patterns and enforce coding style guidelines. Key dependencies for core linting, such as espree for parsing, escope for scope analysis, and estraverse for AST traversal, remain consistent, ensuring stability in the fundamental linting process.
The dependency lists for both versions – including both dependencies and devDependencies – are nearly identical, indicating an evolution of the existing codebase rather than a major overhaul. Both versions share crucial dependencies that aid in development and testing, such as mocha for testing, chai for assertions, and browserify for bundling, further highlighting the iterative nature of this release.
The absence of substantial differences hints at fixes and minor feature enhancements instead of sweeping changes in the linting rules or core engine. Existing ESLint users should find upgrading to 2.12.0 straightforward, since it will be compatible with existing configurations and plugins. Developers can expect more robust and fine-tuned error detection, allowing them to maintain code quality and consistency with minimal disruption. A detailed changelog should be consulted to understand these bug fixes and specific enhancements.
Developers who prioritize a stable linting configuration will perceive this update as helpful because they can take advantage of enhancements without worrying about introducing significant breaking changes.
All the vulnerabilities related to the version 2.12.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: