check-version-modules
Advanced tools
Comparing version 1.5.2 to 2.0.0
@@ -10,4 +10,16 @@ #!/usr/bin/env node | ||
// externals | ||
let colors = null; | ||
try { // test require optional deps | ||
colors = require("colors/safe"); | ||
} | ||
catch (e) { | ||
// nothing to do here | ||
} | ||
// locals | ||
const colorizeFormattedTime = require(join(__dirname, "colorizeFormattedTime.js")); | ||
const checker = require(join(__dirname, "..", "lib", "cjs", "main.cjs")); | ||
const getFormatedTime = require(join(__dirname, "..", "lib", "cjs", "utils", "getFormatedTime.js")); | ||
@@ -68,9 +80,2 @@ // consts | ||
case "--console": | ||
options.console = true; | ||
break; | ||
case "--no-console": | ||
options.console = false; | ||
break; | ||
default: | ||
@@ -86,9 +91,74 @@ errors.push(new RangeError("Unknown \"" + String(arg) + "\" argument")); | ||
if ("" === file) { | ||
file = join((0, process).cwd(), "package.json"); | ||
} | ||
(0, console).log(getFormatedTime.default(), file); | ||
return errors.length ? | ||
Promise.reject(new Error(errors.join(EOL))) : | ||
checker("" === file ? join((0, process).cwd(), "package.json") : file, options).then((valid) => { | ||
checker(file, options).then((analyse) => { | ||
(0, process).exitCode = valid ? 0 : 2; | ||
(0, process).exit(valid ? 0 : 2); | ||
analyse.results.forEach((result) => { | ||
switch (result.result) { | ||
case "fail_major": | ||
(0, console).error( | ||
colorizeFormattedTime(result.time), result.path, "=>", | ||
colors && colors.bgRed ? colors.bgRed(result.message) : result.message | ||
); | ||
break; | ||
case "fail_minor": | ||
(0, console).error( | ||
colorizeFormattedTime(result.time), result.path, "=>", | ||
colors && colors.red ? colors.red(result.message) : result.message | ||
); | ||
break; | ||
case "fail_patch": | ||
case "warning": | ||
(0, console).warn( | ||
colorizeFormattedTime(result.time), result.path, "=>", | ||
colors && colors.yellow ? colors.yellow(result.message) : result.message | ||
); | ||
break; | ||
case "success": | ||
(0, console).log( | ||
colorizeFormattedTime(result.time), result.path, "=>", | ||
colors && colors.green ? colors.green(result.message) : result.message | ||
); | ||
break; | ||
default: | ||
(0, console).log(result.message); | ||
break; | ||
} | ||
}); | ||
if (analyse.result) { | ||
(0, process).exitCode = 0; | ||
(0, process).exit(0); | ||
} | ||
else { | ||
(0, process).exitCode = 2; | ||
(0, process).exit(2); | ||
} | ||
}); | ||
@@ -95,0 +165,0 @@ |
@@ -6,4 +6,4 @@ export interface iOptions { | ||
"dev": boolean; | ||
"console": boolean; | ||
} | ||
export default function checkVersionModule(file: string, opts?: iOptions): Promise<boolean>; | ||
import { iAnalyze } from "./deps/checkDependenciesUpdates"; | ||
export default function checkVersionModule(file: string, opts?: iOptions): Promise<iAnalyze>; |
@@ -12,3 +12,2 @@ "use strict"; | ||
const checkAndFormateOptions_1 = __importDefault(require("./utils/checkAndFormateOptions")); | ||
const getFormatedTime_1 = __importDefault(require("./utils/getFormatedTime")); | ||
; | ||
@@ -24,5 +23,2 @@ // module | ||
return (0, extractAndFormateDeps_1.default)(file, options.dev).then((dependencies) => { | ||
if (options.console) { | ||
console.log((0, getFormatedTime_1.default)(), file); | ||
} | ||
return (0, checkDependenciesUpdates_1.default)(dependencies, { | ||
@@ -32,3 +28,2 @@ "failAtMajor": options.failAtMajor, | ||
"failAtPatch": options.failAtPatch, | ||
"console": options.console, | ||
"dev": options.dev | ||
@@ -35,0 +30,0 @@ }); |
import { iDep } from "./formateDeps"; | ||
import { iOptions } from "../checkVersionModule"; | ||
export default function checkDependenciesUpdates(dependencies: Array<iDep>, options: iOptions): Promise<boolean>; | ||
export interface iResult extends iDep { | ||
"time": string; | ||
"result": "success" | "warning" | "fail_patch" | "fail_minor" | "fail_major"; | ||
"message": string; | ||
} | ||
export interface iAnalyze { | ||
"result": boolean; | ||
"results": Array<iResult>; | ||
} | ||
export default function checkDependenciesUpdates(dependencies: Array<iDep>, options: iOptions): Promise<iAnalyze>; |
@@ -7,10 +7,2 @@ "use strict"; | ||
// deps | ||
// externals | ||
let colors = null; | ||
try { // test require optional deps | ||
colors = require("colors/safe"); | ||
} | ||
catch (e) { | ||
// nothing to do here | ||
} | ||
// locals | ||
@@ -22,2 +14,4 @@ const sortDeps_1 = __importDefault(require("./sortDeps")); | ||
const checkAndFormateVersion_1 = __importDefault(require("../version/checkAndFormateVersion")); | ||
; | ||
; | ||
// module | ||
@@ -33,4 +27,4 @@ function checkDependenciesUpdates(dependencies, options) { | ||
return (0, checkVersionValidity_1.default)(dependency.version, false).then((runnable) => { | ||
if (!runnable && options.console) { | ||
results.push(Object.assign(Object.assign({}, dependency), { "time": (0, getFormatedTime_1.default)(), "result": "not managed " + (colors && colors.yellow ? colors.yellow(dependency.version) : dependency.version) })); | ||
if (!runnable) { | ||
results.push(Object.assign(Object.assign({}, dependency), { "time": (0, getFormatedTime_1.default)(), "result": "warning", "message": "not managed " + dependency.version })); | ||
} | ||
@@ -54,5 +48,3 @@ return runnable; | ||
} | ||
if (options.console) { | ||
results.push(Object.assign(Object.assign({}, dependency), { "time": (0, getFormatedTime_1.default)(), "result": colors && colors.bgRed ? colors.bgRed(dependency.version + " < " + latest) : dependency.version + " < " + latest })); | ||
} | ||
results.push(Object.assign(Object.assign({}, dependency), { "time": (0, getFormatedTime_1.default)(), "result": "fail_major", "message": dependency.version + " < " + latest })); | ||
} | ||
@@ -65,5 +57,3 @@ }).then(() => { | ||
} | ||
if (options.console) { | ||
results.push(Object.assign(Object.assign({}, dependency), { "time": (0, getFormatedTime_1.default)(), "result": colors && colors.red ? colors.red(dependency.version + " < " + latest) : dependency.version + " < " + latest })); | ||
} | ||
results.push(Object.assign(Object.assign({}, dependency), { "time": (0, getFormatedTime_1.default)(), "result": "fail_minor", "message": dependency.version + " < " + latest })); | ||
} | ||
@@ -76,9 +66,7 @@ }).then(() => { | ||
} | ||
if (options.console) { | ||
results.push(Object.assign(Object.assign({}, dependency), { "time": (0, getFormatedTime_1.default)(), "result": colors && colors.yellow ? colors.yellow(dependency.version + " < " + latest) : dependency.version + " < " + latest })); | ||
} | ||
results.push(Object.assign(Object.assign({}, dependency), { "time": (0, getFormatedTime_1.default)(), "result": "fail_patch", "message": dependency.version + " < " + latest })); | ||
} | ||
}).then(() => { | ||
if (!failed && options.console) { | ||
results.push(Object.assign(Object.assign({}, dependency), { "time": (0, getFormatedTime_1.default)(), "result": colors && colors.green ? colors.green("Ok") : "Ok" })); | ||
if (!failed) { | ||
results.push(Object.assign(Object.assign({}, dependency), { "time": (0, getFormatedTime_1.default)(), "result": "success", "message": "Ok" })); | ||
} | ||
@@ -93,6 +81,6 @@ }); | ||
return _execute([...dependencies]).then(() => { | ||
(0, sortDeps_1.default)(results).forEach((r) => { | ||
console.log(r.time, r.path, "=>", r.result); | ||
}); | ||
return valid; | ||
return { | ||
"result": valid, | ||
"results": (0, sortDeps_1.default)(results) | ||
}; | ||
}); | ||
@@ -99,0 +87,0 @@ } |
@@ -7,8 +7,4 @@ export interface iDep { | ||
} | ||
export interface iResult extends iDep { | ||
"time": string; | ||
"result": string; | ||
} | ||
export default function formateDeps(packageData: { | ||
[key: string]: any; | ||
}, dev: boolean): Array<iDep>; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
; | ||
; | ||
// module | ||
@@ -6,0 +5,0 @@ function formateDeps(packageData, dev) { |
@@ -1,2 +0,3 @@ | ||
import { iDep, iResult } from "./formateDeps"; | ||
import { iDep } from "./formateDeps"; | ||
import { iResult } from "./checkDependenciesUpdates"; | ||
export default function sortDeps(dependencies: Array<iDep | iResult>): Array<iDep | iResult>; |
@@ -15,4 +15,3 @@ "use strict"; | ||
"failAtPatch": false, | ||
"dev": true, | ||
"console": true | ||
"dev": true | ||
}; | ||
@@ -26,3 +25,2 @@ // module | ||
options.dev = "undefined" === typeof options.dev ? DEFAULT_OPTIONS.dev : options.dev; | ||
options.console = "undefined" === typeof options.console ? DEFAULT_OPTIONS.console : options.console; | ||
return (0, checkBoolean_1.default)(options.failAtMajor); | ||
@@ -36,4 +34,2 @@ }).then(() => { | ||
}).then(() => { | ||
return (0, checkBoolean_1.default)(options.console); | ||
}).then(() => { | ||
return Promise.resolve(options); | ||
@@ -40,0 +36,0 @@ }); |
@@ -7,10 +7,2 @@ "use strict"; | ||
// deps | ||
// externals | ||
let colors = null; | ||
try { // test require optional deps | ||
colors = require("colors/safe"); | ||
} | ||
catch (e) { | ||
// nothing to do here | ||
} | ||
// locals | ||
@@ -21,10 +13,7 @@ const padleft_1 = __importDefault(require("./padleft")); | ||
const date = new Date(); | ||
const content = (0, padleft_1.default)(date.getHours()) + ":" + | ||
return (0, padleft_1.default)(date.getHours()) + ":" + | ||
(0, padleft_1.default)(date.getMinutes()) + ":" + | ||
(0, padleft_1.default)(date.getSeconds()); | ||
return (colors && colors.white ? colors.white("[") : "[") + | ||
(colors && colors.grey ? colors.grey(content) : content) + | ||
(colors && colors.white ? colors.white("]") : "]"); | ||
} | ||
exports.default = getFormatedTime; | ||
; |
{ | ||
"name": "check-version-modules", | ||
"version": "1.5.2", | ||
"version": "2.0.0", | ||
"description": "Check modules's version for the package.", | ||
@@ -49,5 +49,5 @@ | ||
"devDependencies": { | ||
"@types/node": "20.5.7", | ||
"@types/node": "20.6.0", | ||
"coveralls": "3.1.1", | ||
"eslint": "8.48.0", | ||
"eslint": "8.49.0", | ||
"husky": "8.0.3", | ||
@@ -57,3 +57,3 @@ "mocha": "10.2.0", | ||
"typescript": "5.2.2", | ||
"used-deps-analyzer": "0.1.6" | ||
"used-deps-analyzer": "0.1.8" | ||
}, | ||
@@ -60,0 +60,0 @@ "optionalDependencies": { |
@@ -54,4 +54,3 @@ # check-version-modules | ||
"failAtPatch": boolean; // default: false => if no pattern, used for the returned boolean | ||
"dev": boolean; // default: true => analyse dev deps too | ||
"console": boolean; // default: true => print analyse's result in the terminal | ||
"dev": boolean; // default: true => analyze dev deps too | ||
} | ||
@@ -70,5 +69,3 @@ ``` | ||
* ``` --no-dev ``` => dev = false | ||
* ``` --console ``` => console = true | ||
* ``` --no-console ``` => console = false | ||
* ``` --file ``` => specify analysed file with next argument, if not set analyse the "package.json" in the working directory | ||
* ``` --file ``` => specify analyzed file with next argument, if not set analyze the "package.json" in the working directory | ||
@@ -81,3 +78,3 @@ ## Examples | ||
$ cd ./myProject/ && npx check-version-modules --file /etc/tests/package.json --fail-at-patch --no-dev | ||
$ cd ./myProject/ && npx check-version-modules --no-console --no-fail-at-minor | ||
$ cd ./myProject/ && npx check-version-modules --no-fail-at-minor | ||
``` | ||
@@ -93,4 +90,4 @@ | ||
"dev": false | ||
}).then((valid) => { | ||
console.log(valid ? "ok": "old versions detected"); | ||
}).then((analyze) => { | ||
console.log(analyze.result ? "ok": "old versions detected"); | ||
}).catch((err) => { | ||
@@ -106,4 +103,4 @@ console.error(err); | ||
checker("./package.json").then((valid) => { | ||
console.log(valid ? "ok": "old versions detected"); | ||
checker("./package.json").then((analyze) => { | ||
console.log(analyze.result ? "ok": "old versions detected"); | ||
}).catch((err) => { | ||
@@ -110,0 +107,0 @@ console.error(err); |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
30351
39
656
119
3