ESLint version 3.6.0 represents an incremental update over version 3.5.0, offering developers several notable enhancements and refinements. Both versions serve as AST-based pattern checkers for JavaScript code, aiding in maintaining code quality and consistency through customizable linting rules. Core dependencies remain largely consistent, ensuring a stable foundation for extending functionality.
The most significant change lies in the updated version of espree, a JavaScript parser used by ESLint. Version 3.6.0 utilizes espree 3.2.0, while version 3.5.0 relies on espree 3.1.6. This parser update likely introduces support for new JavaScript syntax features and possibly improves parsing performance or accuracy. This is key for developers wanting to use recent Javascript features. While other dependencies such as the dev dependencies remain the same, this change in espree is the biggest change.
For developers, migrating to ESLint 3.6.0 would involve updating the package dependency and reviewing any custom rules or configurations that might be affected by changes in the underlying JavaScript parser. The release date, September 23, 2016, indicates the version represents a mature release with a specific feature set. The consistent use of MIT license and a well-defined repository structure implies an open and collaborative development environment, encouraging developers to contribute and extend the library's capabilities. Developers seeking the most up-to-date JavaScript syntax understanding and potentially improved parsing capabilities will find value in upgrading to ESLint 3.6.0.
All the vulnerabilities related to the version 3.6.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: