You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by da...@apache.org on 2015/10/16 15:15:04 UTC

[1/3] cordova-cli git commit: CB-9788 Add support of stderr/stdout split to CLI logger

Repository: cordova-cli
Updated Branches:
  refs/heads/master 65069a4d1 -> 38bdd5ef0


CB-9788 Add support of stderr/stdout split to CLI logger

Removed trimming of Error: prefix for backwards compatibility with external tools


Project: http://git-wip-us.apache.org/repos/asf/cordova-cli/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-cli/commit/605bcc2a
Tree: http://git-wip-us.apache.org/repos/asf/cordova-cli/tree/605bcc2a
Diff: http://git-wip-us.apache.org/repos/asf/cordova-cli/diff/605bcc2a

Branch: refs/heads/master
Commit: 605bcc2ae1bf430aeee871243208f3292e896985
Parents: a81a1e0
Author: daserge <v-...@microsoft.com>
Authored: Tue Oct 13 09:35:03 2015 +0300
Committer: daserge <v-...@microsoft.com>
Committed: Fri Oct 16 16:08:26 2015 +0300

----------------------------------------------------------------------
 src/logger.js | 37 +++++++++++++++++++++----------------
 1 file changed, 21 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-cli/blob/605bcc2a/src/logger.js
----------------------------------------------------------------------
diff --git a/src/logger.js b/src/logger.js
index e6172cb..8c0ece0 100644
--- a/src/logger.js
+++ b/src/logger.js
@@ -28,10 +28,12 @@ var EOL = require('os').EOL;
 var logger = {
     levels: {},
     colors: {},
-    output: process.stdout
+    stdout: process.stdout,
+    stderr: process.stderr
 };
 
-logger.cursor = ansi(logger.output);
+logger.stdoutCursor = ansi(logger.stdout);
+logger.stderrCursor = ansi(logger.stderr);
 
 function formatError(error, isVerbose) {
     var message = '';
@@ -44,37 +46,40 @@ function formatError(error, isVerbose) {
         } else {
             message = error.message;
         }
+    } else {
+        // Plain text error message
+        message = error;
     }
 
-    // Some error messages start with 'Error: ' prefix, so cut it off here to avoid duplication.
-    // This will also remove generic Error.name (type), which Error.stack outputs in verbose mode,
-    // i.e. events.emit('error', new Error('...')), while preserving a specific Error type like RangeError.
-    // TODO: Update platforms code to remove such prefixes
-    message = message && message.replace(/^error:\s+/i, '');
-
     return message;
 }
 
 logger.log = function (logLevel, message) {
     if (this.levels[logLevel] >= this.levels[this.logLevel]) {
         var isVerbose = this.logLevel === 'verbose';
+        var cursor, output;
 
-        if(message instanceof Error) {
+        if(message instanceof Error || logLevel === 'error') {
             message = formatError(message, isVerbose);
+            cursor = this.stderrCursor;
+            output = this.stderr;
+        } else {
+            cursor = this.stdoutCursor;
+            output = this.stdout;
         }
 
         message = message + EOL;
 
-        if (!this.cursor) {
-            this.output.write(message);
+        if (!cursor) {
+            output.write(message);
         }
-        if (this.output !== this.cursor.stream) {
-            this.cursor = ansi(this.output, { enabled: colorEnabled });
+        if (output !== cursor.stream) {
+            cursor = ansi(output, { enabled: colorEnabled });
         }
         var color = this.colors[logLevel];
-        !!color && this.cursor.bold().fg[color]();
-        this.cursor.write(message);
-        this.cursor.reset();
+        !!color && cursor.bold().fg[color]();
+        cursor.write(message);
+        cursor.reset();
     }
 };
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[2/3] cordova-cli git commit: CB-9784 Remove CLI logger levels prefixes

Posted by da...@apache.org.
CB-9784 Remove CLI logger levels prefixes


Project: http://git-wip-us.apache.org/repos/asf/cordova-cli/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-cli/commit/a81a1e04
Tree: http://git-wip-us.apache.org/repos/asf/cordova-cli/tree/a81a1e04
Diff: http://git-wip-us.apache.org/repos/asf/cordova-cli/diff/a81a1e04

Branch: refs/heads/master
Commit: a81a1e042e08ccfcbc3c8cd476b70c706dcbffa4
Parents: 65069a4
Author: daserge <v-...@microsoft.com>
Authored: Tue Oct 13 01:10:03 2015 +0300
Committer: daserge <v-...@microsoft.com>
Committed: Fri Oct 16 16:08:26 2015 +0300

----------------------------------------------------------------------
 src/logger.js | 17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-cli/blob/a81a1e04/src/logger.js
----------------------------------------------------------------------
diff --git a/src/logger.js b/src/logger.js
index 93b8bd6..e6172cb 100644
--- a/src/logger.js
+++ b/src/logger.js
@@ -27,7 +27,6 @@ var EOL = require('os').EOL;
 
 var logger = {
     levels: {},
-    prefixes: {},
     colors: {},
     output: process.stdout
 };
@@ -59,13 +58,12 @@ function formatError(error, isVerbose) {
 logger.log = function (logLevel, message) {
     if (this.levels[logLevel] >= this.levels[this.logLevel]) {
         var isVerbose = this.logLevel === 'verbose';
-        var prefix = this.prefixes[logLevel] ? this.prefixes[logLevel] + ': ' : '';
 
         if(message instanceof Error) {
             message = formatError(message, isVerbose);
         }
 
-        message = prefix + message + EOL;
+        message = message + EOL;
 
         if (!this.cursor) {
             this.output.write(message);
@@ -80,9 +78,8 @@ logger.log = function (logLevel, message) {
     }
 };
 
-logger.addLevel = function (level, severity, prefix, color) {
+logger.addLevel = function (level, severity, color) {
     this.levels[level] = severity;
-    prefix && (this.prefixes[level] = prefix);
     color && (this.colors[level] = color);
 
     if (!this[level]) {
@@ -97,11 +94,11 @@ logger.setLevel = function (logLevel) {
     }
 };
 
-logger.addLevel('verbose', 1000, 'VERB ', 'grey');
-logger.addLevel('normal' , 2000, 'LOG  ');
-logger.addLevel('warn'   , 2000, 'WARN ', 'yellow');
-logger.addLevel('info'   , 3000, 'INFO ', 'blue');
-logger.addLevel('error'  , 5000, 'ERROR', 'red');
+logger.addLevel('verbose', 1000, 'grey');
+logger.addLevel('normal' , 2000);
+logger.addLevel('warn'   , 2000, 'yellow');
+logger.addLevel('info'   , 3000, 'blue');
+logger.addLevel('error'  , 5000, 'red');
 logger.addLevel('results' , 10000);
 
 logger.setLevel('normal');


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


[3/3] cordova-cli git commit: CB-9792 Make CLI logging system interrupt process on an error event

Posted by da...@apache.org.
CB-9792 Make CLI logging system interrupt process on an error event

Adds "Error: " prefix for backwards compatibility with external tools

github: close #224


Project: http://git-wip-us.apache.org/repos/asf/cordova-cli/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-cli/commit/38bdd5ef
Tree: http://git-wip-us.apache.org/repos/asf/cordova-cli/tree/38bdd5ef
Diff: http://git-wip-us.apache.org/repos/asf/cordova-cli/diff/38bdd5ef

Branch: refs/heads/master
Commit: 38bdd5ef064613150c66b13ee1ca377481aae1e6
Parents: 605bcc2
Author: daserge <v-...@microsoft.com>
Authored: Thu Oct 15 15:48:18 2015 +0300
Committer: daserge <v-...@microsoft.com>
Committed: Fri Oct 16 16:10:54 2015 +0300

----------------------------------------------------------------------
 src/cli.js    | 9 ++-------
 src/logger.js | 5 +++++
 2 files changed, 7 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-cli/blob/38bdd5ef/src/cli.js
----------------------------------------------------------------------
diff --git a/src/cli.js b/src/cli.js
index fdf59be..9326023 100644
--- a/src/cli.js
+++ b/src/cli.js
@@ -130,12 +130,8 @@ function cli(inputArgs) {
 
     // For CordovaError print only the message without stack trace unless we
     // are in a verbose mode.
-    process.on('uncaughtException', function(err){
-        if ( (err instanceof CordovaError) && !args.verbose ) {
-            events.emit('error', err.message);
-        } else {
-            events.emit('error', err.stack);
-        }
+    process.on('uncaughtException', function(err) {
+        logger.error(err);
         process.exit(1);
     });
 
@@ -143,7 +139,6 @@ function cli(inputArgs) {
     events.on('log', logger.normal);
     events.on('info', logger.info);
     events.on('warn', logger.warn);
-    events.on('error', logger.error);
 
     // Set up event handlers for logging and results emitted as events.
     events.on('results', logger.results);

http://git-wip-us.apache.org/repos/asf/cordova-cli/blob/38bdd5ef/src/logger.js
----------------------------------------------------------------------
diff --git a/src/logger.js b/src/logger.js
index 8c0ece0..93c3d55 100644
--- a/src/logger.js
+++ b/src/logger.js
@@ -51,6 +51,11 @@ function formatError(error, isVerbose) {
         message = error;
     }
 
+    if(message.toUpperCase().indexOf('ERROR:') !== 0) {
+        // Needed for backward compatibility with external tools
+        message = 'Error: ' + message;
+    }
+
     return message;
 }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org