Cli-table2 offers developers a way to generate visually appealing Unicode tables directly in their command-line interface (CLI) applications. Versions 0.1.3 and 0.1.4, both released on the same day, provide this functionality, building upon the foundation of the original cli-table package. A key difference lies in the dependency versions. Version 0.1.3 uses caret (^) ranges for dependencies like colors and lodash, allowing for compatible updates within the specified major version. In contrast, version 0.1.4 pins these to specific versions (colors@1.0.3 and lodash@2.4.1), offering more control and predictability, but potentially missing out on bug fixes or enhancements from later compatible releases.
Both versions share the same core dependencies and development tools. For development, both rely on libraries like chai for assertions, gulp for task automation (including running tests with gulp-mocha and code coverage with gulp-istanbul), and sinon with sinon-chai for creating spies, stubs, and mocks during testing. This indicates a commitment to testing and code quality. Any developer considering using cli-table2 should analyze if precise control over dependencies (version 0.1.4) or the flexibility to receive minor updates automatically (version 0.1.3) aligns better with their project needs and risk tolerance for potential breaking changes within dependencies, since there are no breaking changes in the cli-table2 itself.
All the vulnerabilities related to the version 0.1.4 of the package
Command Injection in lodash
lodash
versions prior to 4.17.21 are vulnerable to Command Injection via the template function.
Prototype Pollution in lodash
Versions of lodash
before 4.17.11 are vulnerable to prototype pollution.
The vulnerable functions are 'defaultsDeep', 'merge', and 'mergeWith' which allow a malicious user to modify the prototype of Object
via {constructor: {prototype: {...}}}
causing the addition or modification of an existing property that will exist on all objects.
Update to version 4.17.11 or later.
Prototype Pollution in lodash
Versions of lodash
before 4.17.5 are vulnerable to prototype pollution.
The vulnerable functions are 'defaultsDeep', 'merge', and 'mergeWith' which allow a malicious user to modify the prototype of Object
via __proto__
causing the addition or modification of an existing property that will exist on all objects.
Update to version 4.17.5 or later.
Prototype Pollution in lodash
Versions of lodash
before 4.17.12 are vulnerable to Prototype Pollution. The function defaultsDeep
allows a malicious user to modify the prototype of Object
via {constructor: {prototype: {...}}}
causing the addition or modification of an existing property that will exist on all objects.
Update to version 4.17.12 or later.