From 027027634d89dff43a1d8c0316751505629d148b Mon Sep 17 00:00:00 2001 From: Pavol Bielik Date: Tue, 27 Jan 2015 16:27:35 +0100 Subject: [PATCH] check server version --- bin/unuglifyjs | 34 ++++++++++++++++++++++------------ package.json | 2 +- 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/bin/unuglifyjs b/bin/unuglifyjs index 16405699..559b7e26 100755 --- a/bin/unuglifyjs +++ b/bin/unuglifyjs @@ -8,6 +8,7 @@ var sys = require("util"); var yargs = require("yargs"); var fs = require("fs"); var http = require('http'); +var json = require("../package.json"); var ARGS = yargs .usage("$0 input1.js \n") @@ -72,7 +73,7 @@ if (ARGS.colors){ } if (ARGS.version || ARGS.V) { - var json = require("../package.json"); + //var json = require("../package.json"); sys.puts(json.name + ' ' + json.version); process.exit(0); } @@ -213,18 +214,26 @@ function processFile(file) { "infer", JSON.parse(output), function(data) { - var result = JSON.parse(data).result; - var inferred_names = {}; - for (var i = 0; i < result.length; i++) { - if (result[i].hasOwnProperty("inf")) { - inferred_names[result[i].v] = result[i].inf.green; - } + var data_json = JSON.parse(data); + if (data_json.hasOwnProperty('error')){ + console.log("ERROR: ".red + data_json.error.message); } - try { - var renamed_js = UglifyJS.replaceMangled(code, file, inferred_names); - console.log(renamed_js); - } catch (ex){ - sys.error("ERROR: ".red + "failed rename '" + file + "': " + ex); + else if (data_json.hasOwnProperty('result')) { + var result = data_json.result; + var inferred_names = {}; + for (var i = 0; i < result.length; i++) { + if (result[i].hasOwnProperty("inf")) { + inferred_names[result[i].v] = result[i].inf.green; + } + } + try { + var renamed_js = UglifyJS.replaceMangled(code, file, inferred_names); + console.log(renamed_js); + } catch (ex) { + sys.error("ERROR: ".red + "failed rename '" + file + "': " + ex); + } + } else { + sys.error("ERROR: ".red + "undefined response. Try to update unuglify-js to the latest version by 'npm update -g unuglify-js'"); } }, @@ -261,6 +270,7 @@ function callServer(server, port, methodName, params, success_cb, error_cb) { method : methodName, id : (++json_rpc_id) }; + params.version = json.version; req.params = params; var post_data = JSON.stringify(req); diff --git a/package.json b/package.json index 73096be0..5fe817f9 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "description": "JavaScript tool that renames variables and parameters to names based on statistical model learnt from thousands of open source projects", "homepage": "https://github.com/eth-srl/UnuglifyJS", "main": "tools/node.js", - "version": "0.9.2", + "version": "0.9.3", "engines": { "node" : ">=0.4.0" }, "maintainers": [{ "name": "Pavol Bielik",