From f462c00090dd6998e2940639799f49895245448c Mon Sep 17 00:00:00 2001 From: otofune Date: Wed, 25 Jan 2017 20:38:19 +0900 Subject: [PATCH] [utils] dependencyInfo: use child_process instead of shelljs drop shelljs from dependencies. --- package.json | 2 -- src/utils/dependencyInfo.ts | 14 +++++--------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index 751bd4f84f..31f3359ec1 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,6 @@ "@types/request": "0.0.39", "@types/rimraf": "0.0.28", "@types/serve-favicon": "2.2.28", - "@types/shelljs": "0.3.33", "@types/twitter": "0.0.28", "@types/uuid": "2.0.29", "@types/vinyl-buffer": "0.0.28", @@ -139,7 +138,6 @@ "rndstr": "1.0.0", "s-age": "1.1.0", "serve-favicon": "2.3.2", - "shelljs": "0.7.6", "subdomain": "1.2.0", "summaly": "1.3.0", "swagger-jsdoc": "1.9.0", diff --git a/src/utils/dependencyInfo.ts b/src/utils/dependencyInfo.ts index 9d2c6a1d4f..c7c1441ec1 100644 --- a/src/utils/dependencyInfo.ts +++ b/src/utils/dependencyInfo.ts @@ -1,5 +1,5 @@ import Logger from './logger'; -import { exec } from 'shelljs'; +import { execSync } from 'child_process'; export default class { logger: Logger; @@ -15,20 +15,16 @@ export default class { } show(serviceName: string, command: string, transform: (x: string) => RegExpMatchArray): void { - const code = { - success: 0, - notFound: 127 - }; - const x = exec(command, { silent: true }) as any; - if (x.code === code.success) { - let ver = transform(x.stdout); + try { + const x = execSync(command, { stdio: ['pipe', 'pipe', 'ignore'] }); + const ver = transform(x.toString()); if (ver != null) { this.logger.info(`${serviceName} ${ver[1]} found`); } else { this.logger.warn(`${serviceName} not found`); this.logger.warn(`Regexp used for version check of ${serviceName} is probably messed up`); } - } else if (x.code === code.notFound) { + } catch (e) { this.logger.warn(`${serviceName} not found`); } }