Socket
Socket
Sign inDemoInstall

check-version-modules

Package Overview
Dependencies
Maintainers
1
Versions
22
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

check-version-modules - npm Package Compare versions

Comparing version 1.3.2 to 1.3.3

199

lib/deps/checkDependenciesUpdates.js
/*
eslint-disable prefer-arrow-callback, max-len
eslint-disable prefer-arrow-callback
*/

@@ -21,154 +21,163 @@

// private
// module
// methods
module.exports = function checkDependenciesUpdates (dependencies, options) {
/**
* Check dependencies
* @param {Array} dependencies : dependencies to check
* @param {object} options : compilation's options
* @param {number} i : stepper
* @param {boolean} valid : is tests passed
* @returns {Promise} : Result operation
*/
function _checkDependenciesUpdates (dependencies, options, i = 0, valid = true) {
let valid = true;
const results = [];
return i >= dependencies.length ? Promise.resolve(valid) : Promise.resolve().then(function run () {
return Promise.all(dependencies.map((dependency) => {
const dependency = dependencies[i];
return Promise.resolve().then(function isVersionRunnable () {
return Promise.resolve().then(function isVersionRunnable () {
return checkVersionValidity(dependency.version, false).then((runnable) => {
return checkVersionValidity(dependency.version, false).then((runnable) => {
if (!runnable && options.console) {
if (!runnable && options.console) {
results.push({
"time": getFormatedTime(),
"dependency": dependency.path,
"result": "not managed " + dependency.version.yellow
});
(0, console).log(getFormatedTime(),
dependency.path, "=>", "not managed", dependency.version.yellow
);
}
}
return Promise.resolve(runnable);
return Promise.resolve(runnable);
});
});
}).then(function runCheckifRunnable (runCheck) {
}).then(function runCheckifRunnable (runCheck) {
return !runCheck ? Promise.resolve(runCheck) : checkAndFormateVersion(dependency.version).then(function runWithVersion (formatedVersion) {
return !runCheck ? Promise.resolve(runCheck) : checkAndFormateVersion(dependency.version).then(function runWithVersion (formatedVersion) {
return Promise.resolve().then(function getRegisteryData () {
return Promise.resolve().then(function getRegisteryData () {
return downloadPackageData(dependency.name);
return downloadPackageData(dependency.name);
}).then(function compare (latest) {
}).then(function compare (latest) {
const latestVersions = latest.split(".").map(function formate (v) {
return parseInt(v, 10);
});
const currentVersions = formatedVersion.split(".").map(function formate (v) {
return "x" === v ? v : parseInt(v, 10);
});
const latestVersions = latest.split(".").map(function formate (v) {
return parseInt(v, 10);
});
const currentVersions = formatedVersion.split(".").map(function formate (v) {
return "x" === v ? v : parseInt(v, 10);
});
let failed = false;
let failed = false;
let result = valid;
return Promise.resolve().then(function compareMajor () {
return Promise.resolve().then(function compareMajor () {
if (!failed && "x" !== currentVersions[0] && latestVersions[0] > currentVersions[0]) {
if (!failed && "x" !== currentVersions[0] && latestVersions[0] > currentVersions[0]) {
failed = true;
failed = true;
if (options.failAtMajor) {
valid = false;
}
if (options.failAtMajor) {
result = false;
}
if (options.console) {
if (options.console) {
results.push({
"time": getFormatedTime(),
"dependency": dependency.path,
"result": (dependency.version + " < " + latest).bgRed
});
(0, console).log(getFormatedTime(),
dependency.path, "=>", (dependency.version + " < " + latest).bgRed
);
}
}
}
}
return Promise.resolve();
return Promise.resolve();
}).then(function compareMinor () {
}).then(function compareMinor () {
if (!failed && "x" !== currentVersions[1] && latestVersions[1] > currentVersions[1]) {
if (!failed && "x" !== currentVersions[1] && latestVersions[1] > currentVersions[1]) {
failed = true;
failed = true;
if (options.failAtMinor) {
valid = false;
}
if (options.failAtMinor) {
result = false;
}
if (options.console) {
if (options.console) {
results.push({
"time": getFormatedTime(),
"dependency": dependency.path,
"result": (dependency.version + " < " + latest).red
});
(0, console).log(getFormatedTime(),
dependency.path, "=>", (dependency.version + " < " + latest).red
);
}
}
}
}
return Promise.resolve();
return Promise.resolve();
}).then(function comparePatch () {
}).then(function comparePatch () {
if (!failed && "x" !== currentVersions[2] && latestVersions[2] > currentVersions[2]) {
if (!failed && "x" !== currentVersions[2] && latestVersions[2] > currentVersions[2]) {
failed = true;
failed = true;
if (options.failAtPatch) {
valid = false;
}
if (options.failAtPatch) {
result = false;
}
if (options.console) {
if (options.console) {
results.push({
"time": getFormatedTime(),
"dependency": dependency.path,
"result": (dependency.version + " < " + latest).yellow
});
(0, console).log(getFormatedTime(),
dependency.path, "=>", (dependency.version + " < " + latest).yellow
);
}
}
}
}
return Promise.resolve();
return Promise.resolve();
}).then(function ok () {
}).then(function ok () {
if (!failed && options.console) {
if (!failed && options.console) {
results.push({
"time": getFormatedTime(),
"dependency": dependency.path,
"result": "Ok".green
});
(0, console).log(getFormatedTime(),
dependency.path, "=>", "Ok".green
);
}
}
return Promise.resolve();
return Promise.resolve();
});
}).then(function next () {
});
return _checkDependenciesUpdates(
dependencies, options, i + 1, result
);
});
});
});
});
})).then(() => {
});
results.sort((a, b) => {
});
if (a.dependency < b.dependency) {
return -1;
}
else if (a.dependency > b.dependency) {
return 1;
}
else {
return 0;
}
});
}).forEach((r) => {
(0, console).log(r.time, r.dependency, "=>", r.result);
});
}
return Promise.resolve(valid);
});
// module
module.exports = _checkDependenciesUpdates;
};
{
"name": "check-version-modules",
"version": "1.3.2",
"version": "1.3.3",
"description": "Check modules's version for the package.",

@@ -49,9 +49,9 @@ "main": "lib/main.js",

"devDependencies": {
"@types/node": "15.12.1",
"coveralls": "3.1.0",
"eslint": "7.28.0",
"husky": "6.0.0",
"mocha": "9.0.0",
"@types/node": "16.7.2",
"coveralls": "3.1.1",
"eslint": "7.32.0",
"husky": "7.0.2",
"mocha": "9.1.0",
"nyc": "15.1.0",
"typescript": "4.3.2"
"typescript": "4.3.5"
},

@@ -58,0 +58,0 @@ "homepage": "https://github.com/Psychopoulet/check-version-modules#readme",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc