incubator-callback-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ste...@apache.org
Subject [7/14] updated package.json
Date Tue, 11 Sep 2012 22:59:40 GMT
http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/coffee-script/lib/coffee-script/repl.js
----------------------------------------------------------------------
diff --git a/node_modules/coffee-script/lib/coffee-script/repl.js b/node_modules/coffee-script/lib/coffee-script/repl.js
deleted file mode 100644
index 3368d7c..0000000
--- a/node_modules/coffee-script/lib/coffee-script/repl.js
+++ /dev/null
@@ -1,149 +0,0 @@
-(function() {
-  var ACCESSOR, CoffeeScript, Module, REPL_PROMPT, REPL_PROMPT_CONTINUATION, SIMPLEVAR, Script, autocomplete, backlog, completeAttribute, completeVariable, enableColours, error, getCompletions, inspect, readline, repl, run, stdin, stdout;
-
-  CoffeeScript = require('./coffee-script');
-
-  readline = require('readline');
-
-  inspect = require('util').inspect;
-
-  Script = require('vm').Script;
-
-  Module = require('module');
-
-  REPL_PROMPT = 'coffee> ';
-
-  REPL_PROMPT_CONTINUATION = '......> ';
-
-  enableColours = false;
-
-  if (process.platform !== 'win32') {
-    enableColours = !process.env.NODE_DISABLE_COLORS;
-  }
-
-  stdin = process.openStdin();
-
-  stdout = process.stdout;
-
-  error = function(err) {
-    return stdout.write((err.stack || err.toString()) + '\n');
-  };
-
-  backlog = '';
-
-  run = function(buffer) {
-    var code, returnValue, _;
-    if (!buffer.toString().trim() && !backlog) {
-      repl.prompt();
-      return;
-    }
-    code = backlog += buffer;
-    if (code[code.length - 1] === '\\') {
-      backlog = "" + backlog.slice(0, -1) + "\n";
-      repl.setPrompt(REPL_PROMPT_CONTINUATION);
-      repl.prompt();
-      return;
-    }
-    repl.setPrompt(REPL_PROMPT);
-    backlog = '';
-    try {
-      _ = global._;
-      returnValue = CoffeeScript.eval("_=(" + code + "\n)", {
-        filename: 'repl',
-        modulename: 'repl'
-      });
-      if (returnValue === void 0) global._ = _;
-      process.stdout.write(inspect(returnValue, false, 2, enableColours) + '\n');
-    } catch (err) {
-      error(err);
-    }
-    return repl.prompt();
-  };
-
-  ACCESSOR = /\s*([\w\.]+)(?:\.(\w*))$/;
-
-  SIMPLEVAR = /\s*(\w*)$/i;
-
-  autocomplete = function(text) {
-    return completeAttribute(text) || completeVariable(text) || [[], text];
-  };
-
-  completeAttribute = function(text) {
-    var all, completions, match, obj, prefix, val;
-    if (match = text.match(ACCESSOR)) {
-      all = match[0], obj = match[1], prefix = match[2];
-      try {
-        val = Script.runInThisContext(obj);
-      } catch (error) {
-        return;
-      }
-      completions = getCompletions(prefix, Object.getOwnPropertyNames(val));
-      return [completions, prefix];
-    }
-  };
-
-  completeVariable = function(text) {
-    var completions, free, keywords, possibilities, r, vars, _ref;
-    free = (_ref = text.match(SIMPLEVAR)) != null ? _ref[1] : void 0;
-    if (free != null) {
-      vars = Script.runInThisContext('Object.getOwnPropertyNames(this)');
-      keywords = (function() {
-        var _i, _len, _ref2, _results;
-        _ref2 = CoffeeScript.RESERVED;
-        _results = [];
-        for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
-          r = _ref2[_i];
-          if (r.slice(0, 2) !== '__') _results.push(r);
-        }
-        return _results;
-      })();
-      possibilities = vars.concat(keywords);
-      completions = getCompletions(free, possibilities);
-      return [completions, free];
-    }
-  };
-
-  getCompletions = function(prefix, candidates) {
-    var el, _i, _len, _results;
-    _results = [];
-    for (_i = 0, _len = candidates.length; _i < _len; _i++) {
-      el = candidates[_i];
-      if (el.indexOf(prefix) === 0) _results.push(el);
-    }
-    return _results;
-  };
-
-  process.on('uncaughtException', error);
-
-  if (readline.createInterface.length < 3) {
-    repl = readline.createInterface(stdin, autocomplete);
-    stdin.on('data', function(buffer) {
-      return repl.write(buffer);
-    });
-  } else {
-    repl = readline.createInterface(stdin, stdout, autocomplete);
-  }
-
-  repl.on('attemptClose', function() {
-    if (backlog) {
-      backlog = '';
-      process.stdout.write('\n');
-      repl.setPrompt(REPL_PROMPT);
-      return repl.prompt();
-    } else {
-      return repl.close();
-    }
-  });
-
-  repl.on('close', function() {
-    process.stdout.write('\n');
-    return stdin.destroy();
-  });
-
-  repl.on('line', run);
-
-  repl.setPrompt(REPL_PROMPT);
-
-  repl.prompt();
-
-}).call(this);

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/coffee-script/lib/coffee-script/rewriter.js
----------------------------------------------------------------------
diff --git a/node_modules/coffee-script/lib/coffee-script/rewriter.js b/node_modules/coffee-script/lib/coffee-script/rewriter.js
deleted file mode 100644
index b4fdc07..0000000
--- a/node_modules/coffee-script/lib/coffee-script/rewriter.js
+++ /dev/null
@@ -1,301 +0,0 @@
-(function() {
-  var BALANCED_PAIRS, EXPRESSION_CLOSE, EXPRESSION_END, EXPRESSION_START, IMPLICIT_BLOCK, IMPLICIT_CALL, IMPLICIT_END, IMPLICIT_FUNC, IMPLICIT_UNSPACED_CALL, INVERSES, LINEBREAKS, SINGLE_CLOSERS, SINGLE_LINERS, left, rite, _i, _len, _ref,
-    __indexOf = Array.prototype.indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; },
-    __slice = Array.prototype.slice;
-
-  exports.Rewriter = (function() {
-
-    function Rewriter() {}
-
-    Rewriter.prototype.rewrite = function(tokens) {
-      this.tokens = tokens;
-      this.removeLeadingNewlines();
-      this.removeMidExpressionNewlines();
-      this.closeOpenCalls();
-      this.closeOpenIndexes();
-      this.addImplicitIndentation();
-      this.tagPostfixConditionals();
-      this.addImplicitBraces();
-      this.addImplicitParentheses();
-      return this.tokens;
-    };
-
-    Rewriter.prototype.scanTokens = function(block) {
-      var i, token, tokens;
-      tokens = this.tokens;
-      i = 0;
-      while (token = tokens[i]) {
-        i += block.call(this, token, i, tokens);
-      }
-      return true;
-    };
-
-    Rewriter.prototype.detectEnd = function(i, condition, action) {
-      var levels, token, tokens, _ref, _ref2;
-      tokens = this.tokens;
-      levels = 0;
-      while (token = tokens[i]) {
-        if (levels === 0 && condition.call(this, token, i)) {
-          return action.call(this, token, i);
-        }
-        if (!token || levels < 0) return action.call(this, token, i - 1);
-        if (_ref = token[0], __indexOf.call(EXPRESSION_START, _ref) >= 0) {
-          levels += 1;
-        } else if (_ref2 = token[0], __indexOf.call(EXPRESSION_END, _ref2) >= 0) {
-          levels -= 1;
-        }
-        i += 1;
-      }
-      return i - 1;
-    };
-
-    Rewriter.prototype.removeLeadingNewlines = function() {
-      var i, tag, _len, _ref;
-      _ref = this.tokens;
-      for (i = 0, _len = _ref.length; i < _len; i++) {
-        tag = _ref[i][0];
-        if (tag !== 'TERMINATOR') break;
-      }
-      if (i) return this.tokens.splice(0, i);
-    };
-
-    Rewriter.prototype.removeMidExpressionNewlines = function() {
-      return this.scanTokens(function(token, i, tokens) {
-        var _ref;
-        if (!(token[0] === 'TERMINATOR' && (_ref = this.tag(i + 1), __indexOf.call(EXPRESSION_CLOSE, _ref) >= 0))) {
-          return 1;
-        }
-        tokens.splice(i, 1);
-        return 0;
-      });
-    };
-
-    Rewriter.prototype.closeOpenCalls = function() {
-      var action, condition;
-      condition = function(token, i) {
-        var _ref;
-        return ((_ref = token[0]) === ')' || _ref === 'CALL_END') || token[0] === 'OUTDENT' && this.tag(i - 1) === ')';
-      };
-      action = function(token, i) {
-        return this.tokens[token[0] === 'OUTDENT' ? i - 1 : i][0] = 'CALL_END';
-      };
-      return this.scanTokens(function(token, i) {
-        if (token[0] === 'CALL_START') this.detectEnd(i + 1, condition, action);
-        return 1;
-      });
-    };
-
-    Rewriter.prototype.closeOpenIndexes = function() {
-      var action, condition;
-      condition = function(token, i) {
-        var _ref;
-        return (_ref = token[0]) === ']' || _ref === 'INDEX_END';
-      };
-      action = function(token, i) {
-        return token[0] = 'INDEX_END';
-      };
-      return this.scanTokens(function(token, i) {
-        if (token[0] === 'INDEX_START') this.detectEnd(i + 1, condition, action);
-        return 1;
-      });
-    };
-
-    Rewriter.prototype.addImplicitBraces = function() {
-      var action, condition, sameLine, stack, start, startIndent, startsLine;
-      stack = [];
-      start = null;
-      startsLine = null;
-      sameLine = true;
-      startIndent = 0;
-      condition = function(token, i) {
-        var one, tag, three, two, _ref, _ref2;
-        _ref = this.tokens.slice(i + 1, (i + 3) + 1 || 9e9), one = _ref[0], two = _ref[1], three = _ref[2];
-        if ('HERECOMMENT' === (one != null ? one[0] : void 0)) return false;
-        tag = token[0];
-        if (__indexOf.call(LINEBREAKS, tag) >= 0) sameLine = false;
-        return (((tag === 'TERMINATOR' || tag === 'OUTDENT') || (__indexOf.call(IMPLICIT_END, tag) >= 0 && sameLine)) && ((!startsLine && this.tag(i - 1) !== ',') || !((two != null ? two[0] : void 0) === ':' || (one != null ? one[0] : void 0) === '@' && (three != null ? three[0] : void 0) === ':'))) || (tag === ',' && one && ((_ref2 = one[0]) !== 'IDENTIFIER' && _ref2 !== 'NUMBER' && _ref2 !== 'STRING' && _ref2 !== '@' && _ref2 !== 'TERMINATOR' && _ref2 !== 'OUTDENT'));
-      };
-      action = function(token, i) {
-        var tok;
-        tok = ['}', '}', token[2]];
-        tok.generated = true;
-        return this.tokens.splice(i, 0, tok);
-      };
-      return this.scanTokens(function(token, i, tokens) {
-        var ago, idx, prevTag, tag, tok, value, _ref, _ref2;
-        if (_ref = (tag = token[0]), __indexOf.call(EXPRESSION_START, _ref) >= 0) {
-          stack.push([(tag === 'INDENT' && this.tag(i - 1) === '{' ? '{' : tag), i]);
-          return 1;
-        }
-        if (__indexOf.call(EXPRESSION_END, tag) >= 0) {
-          start = stack.pop();
-          return 1;
-        }
-        if (!(tag === ':' && ((ago = this.tag(i - 2)) === ':' || ((_ref2 = stack[stack.length - 1]) != null ? _ref2[0] : void 0) !== '{'))) {
-          return 1;
-        }
-        sameLine = true;
-        stack.push(['{']);
-        idx = ago === '@' ? i - 2 : i - 1;
-        while (this.tag(idx - 2) === 'HERECOMMENT') {
-          idx -= 2;
-        }
-        prevTag = this.tag(idx - 1);
-        startsLine = !prevTag || (__indexOf.call(LINEBREAKS, prevTag) >= 0);
-        value = new String('{');
-        value.generated = true;
-        tok = ['{', value, token[2]];
-        tok.generated = true;
-        tokens.splice(idx, 0, tok);
-        this.detectEnd(i + 2, condition, action);
-        return 2;
-      });
-    };
-
-    Rewriter.prototype.addImplicitParentheses = function() {
-      var action, condition, noCall, seenControl, seenSingle;
-      noCall = seenSingle = seenControl = false;
-      condition = function(token, i) {
-        var post, tag, _ref, _ref2;
-        tag = token[0];
-        if (!seenSingle && token.fromThen) return true;
-        if (tag === 'IF' || tag === 'ELSE' || tag === 'CATCH' || tag === '->' || tag === '=>' || tag === 'CLASS') {
-          seenSingle = true;
-        }
-        if (tag === 'IF' || tag === 'ELSE' || tag === 'SWITCH' || tag === 'TRY' || tag === '=') {
-          seenControl = true;
-        }
-        if ((tag === '.' || tag === '?.' || tag === '::') && this.tag(i - 1) === 'OUTDENT') {
-          return true;
-        }
-        return !token.generated && this.tag(i - 1) !== ',' && (__indexOf.call(IMPLICIT_END, tag) >= 0 || (tag === 'INDENT' && !seenControl)) && (tag !== 'INDENT' || (((_ref = this.tag(i - 2)) !== 'CLASS' && _ref !== 'EXTENDS') && (_ref2 = this.tag(i - 1), __indexOf.call(IMPLICIT_BLOCK, _ref2) < 0) && !((post = this.tokens[i + 1]) && post.generated && post[0] === '{')));
-      };
-      action = function(token, i) {
-        return this.tokens.splice(i, 0, ['CALL_END', ')', token[2]]);
-      };
-      return this.scanTokens(function(token, i, tokens) {
-        var callObject, current, next, prev, tag, _ref, _ref2, _ref3;
-        tag = token[0];
-        if (tag === 'CLASS' || tag === 'IF') noCall = true;
-        _ref = tokens.slice(i - 1, (i + 1) + 1 || 9e9), prev = _ref[0], current = _ref[1], next = _ref[2];
-        callObject = !noCall && tag === 'INDENT' && next && next.generated && next[0] === '{' && prev && (_ref2 = prev[0], __indexOf.call(IMPLICIT_FUNC, _ref2) >= 0);
-        seenSingle = false;
-        seenControl = false;
-        if (__indexOf.call(LINEBREAKS, tag) >= 0) noCall = false;
-        if (prev && !prev.spaced && tag === '?') token.call = true;
-        if (token.fromThen) return 1;
-        if (!(callObject || (prev != null ? prev.spaced : void 0) && (prev.call || (_ref3 = prev[0], __indexOf.call(IMPLICIT_FUNC, _ref3) >= 0)) && (__indexOf.call(IMPLICIT_CALL, tag) >= 0 || !(token.spaced || token.newLine) && __indexOf.call(IMPLICIT_UNSPACED_CALL, tag) >= 0))) {
-          return 1;
-        }
-        tokens.splice(i, 0, ['CALL_START', '(', token[2]]);
-        this.detectEnd(i + 1, condition, action);
-        if (prev[0] === '?') prev[0] = 'FUNC_EXIST';
-        return 2;
-      });
-    };
-
-    Rewriter.prototype.addImplicitIndentation = function() {
-      var action, condition, indent, outdent, starter;
-      starter = indent = outdent = null;
-      condition = function(token, i) {
-        var _ref;
-        return token[1] !== ';' && (_ref = token[0], __indexOf.call(SINGLE_CLOSERS, _ref) >= 0) && !(token[0] === 'ELSE' && (starter !== 'IF' && starter !== 'THEN'));
-      };
-      action = function(token, i) {
-        return this.tokens.splice((this.tag(i - 1) === ',' ? i - 1 : i), 0, outdent);
-      };
-      return this.scanTokens(function(token, i, tokens) {
-        var tag, _ref, _ref2;
-        tag = token[0];
-        if (tag === 'TERMINATOR' && this.tag(i + 1) === 'THEN') {
-          tokens.splice(i, 1);
-          return 0;
-        }
-        if (tag === 'ELSE' && this.tag(i - 1) !== 'OUTDENT') {
-          tokens.splice.apply(tokens, [i, 0].concat(__slice.call(this.indentation(token))));
-          return 2;
-        }
-        if (tag === 'CATCH' && ((_ref = this.tag(i + 2)) === 'OUTDENT' || _ref === 'TERMINATOR' || _ref === 'FINALLY')) {
-          tokens.splice.apply(tokens, [i + 2, 0].concat(__slice.call(this.indentation(token))));
-          return 4;
-        }
-        if (__indexOf.call(SINGLE_LINERS, tag) >= 0 && this.tag(i + 1) !== 'INDENT' && !(tag === 'ELSE' && this.tag(i + 1) === 'IF')) {
-          starter = tag;
-          _ref2 = this.indentation(token), indent = _ref2[0], outdent = _ref2[1];
-          if (starter === 'THEN') indent.fromThen = true;
-          indent.generated = outdent.generated = true;
-          tokens.splice(i + 1, 0, indent);
-          this.detectEnd(i + 2, condition, action);
-          if (tag === 'THEN') tokens.splice(i, 1);
-          return 1;
-        }
-        return 1;
-      });
-    };
-
-    Rewriter.prototype.tagPostfixConditionals = function() {
-      var action, condition, original;
-      original = null;
-      condition = function(token, i) {
-        var _ref;
-        return (_ref = token[0]) === 'TERMINATOR' || _ref === 'INDENT';
-      };
-      action = function(token, i) {
-        if (token[0] !== 'INDENT' || (token.generated && !token.fromThen)) {
-          return original[0] = 'POST_' + original[0];
-        }
-      };
-      return this.scanTokens(function(token, i) {
-        if (token[0] !== 'IF') return 1;
-        original = token;
-        this.detectEnd(i + 1, condition, action);
-        return 1;
-      });
-    };
-
-    Rewriter.prototype.indentation = function(token) {
-      return [['INDENT', 2, token[2]], ['OUTDENT', 2, token[2]]];
-    };
-
-    Rewriter.prototype.tag = function(i) {
-      var _ref;
-      return (_ref = this.tokens[i]) != null ? _ref[0] : void 0;
-    };
-
-    return Rewriter;
-
-  })();
-
-  BALANCED_PAIRS = [['(', ')'], ['[', ']'], ['{', '}'], ['INDENT', 'OUTDENT'], ['CALL_START', 'CALL_END'], ['PARAM_START', 'PARAM_END'], ['INDEX_START', 'INDEX_END']];
-
-  exports.INVERSES = INVERSES = {};
-
-  EXPRESSION_START = [];
-
-  EXPRESSION_END = [];
-
-  for (_i = 0, _len = BALANCED_PAIRS.length; _i < _len; _i++) {
-    _ref = BALANCED_PAIRS[_i], left = _ref[0], rite = _ref[1];
-    EXPRESSION_START.push(INVERSES[rite] = left);
-    EXPRESSION_END.push(INVERSES[left] = rite);
-  }
-
-  EXPRESSION_CLOSE = ['CATCH', 'WHEN', 'ELSE', 'FINALLY'].concat(EXPRESSION_END);
-
-  IMPLICIT_FUNC = ['IDENTIFIER', 'SUPER', ')', 'CALL_END', ']', 'INDEX_END', '@', 'THIS'];
-
-  IMPLICIT_CALL = ['IDENTIFIER', 'NUMBER', 'STRING', 'JS', 'REGEX', 'NEW', 'PARAM_START', 'CLASS', 'IF', 'TRY', 'SWITCH', 'THIS', 'BOOL', 'UNARY', 'SUPER', '@', '->', '=>', '[', '(', '{', '--', '++'];
-
-  IMPLICIT_UNSPACED_CALL = ['+', '-'];
-
-  IMPLICIT_BLOCK = ['->', '=>', '{', '[', ','];
-
-  IMPLICIT_END = ['POST_IF', 'FOR', 'WHILE', 'UNTIL', 'WHEN', 'BY', 'LOOP', 'TERMINATOR'];
-
-  SINGLE_LINERS = ['ELSE', '->', '=>', 'TRY', 'FINALLY', 'THEN'];
-
-  SINGLE_CLOSERS = ['TERMINATOR', 'CATCH', 'FINALLY', 'ELSE', 'OUTDENT', 'LEADING_WHEN'];
-
-  LINEBREAKS = ['TERMINATOR', 'INDENT', 'OUTDENT'];
-
-}).call(this);

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/coffee-script/lib/coffee-script/scope.js
----------------------------------------------------------------------
diff --git a/node_modules/coffee-script/lib/coffee-script/scope.js b/node_modules/coffee-script/lib/coffee-script/scope.js
deleted file mode 100644
index 2162853..0000000
--- a/node_modules/coffee-script/lib/coffee-script/scope.js
+++ /dev/null
@@ -1,124 +0,0 @@
-(function() {
-  var Scope, extend, last, _ref;
-
-  _ref = require('./helpers'), extend = _ref.extend, last = _ref.last;
-
-  exports.Scope = Scope = (function() {
-
-    Scope.root = null;
-
-    function Scope(parent, expressions, method) {
-      this.parent = parent;
-      this.expressions = expressions;
-      this.method = method;
-      this.variables = [
-        {
-          name: 'arguments',
-          type: 'arguments'
-        }
-      ];
-      this.positions = {};
-      if (!this.parent) Scope.root = this;
-    }
-
-    Scope.prototype.add = function(name, type, immediate) {
-      if (this.shared && !immediate) return this.parent.add(name, type, immediate);
-      if (Object.prototype.hasOwnProperty.call(this.positions, name)) {
-        return this.variables[this.positions[name]].type = type;
-      } else {
-        return this.positions[name] = this.variables.push({
-          name: name,
-          type: type
-        }) - 1;
-      }
-    };
-
-    Scope.prototype.find = function(name, options) {
-      if (this.check(name, options)) return true;
-      this.add(name, 'var');
-      return false;
-    };
-
-    Scope.prototype.parameter = function(name) {
-      if (this.shared && this.parent.check(name, true)) return;
-      return this.add(name, 'param');
-    };
-
-    Scope.prototype.check = function(name, immediate) {
-      var found, _ref2;
-      found = !!this.type(name);
-      if (found || immediate) return found;
-      return !!((_ref2 = this.parent) != null ? _ref2.check(name) : void 0);
-    };
-
-    Scope.prototype.temporary = function(name, index) {
-      if (name.length > 1) {
-        return '_' + name + (index > 1 ? index : '');
-      } else {
-        return '_' + (index + parseInt(name, 36)).toString(36).replace(/\d/g, 'a');
-      }
-    };
-
-    Scope.prototype.type = function(name) {
-      var v, _i, _len, _ref2;
-      _ref2 = this.variables;
-      for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
-        v = _ref2[_i];
-        if (v.name === name) return v.type;
-      }
-      return null;
-    };
-
-    Scope.prototype.freeVariable = function(name, reserve) {
-      var index, temp;
-      if (reserve == null) reserve = true;
-      index = 0;
-      while (this.check((temp = this.temporary(name, index)))) {
-        index++;
-      }
-      if (reserve) this.add(temp, 'var', true);
-      return temp;
-    };
-
-    Scope.prototype.assign = function(name, value) {
-      this.add(name, {
-        value: value,
-        assigned: true
-      }, true);
-      return this.hasAssignments = true;
-    };
-
-    Scope.prototype.hasDeclarations = function() {
-      return !!this.declaredVariables().length;
-    };
-
-    Scope.prototype.declaredVariables = function() {
-      var realVars, tempVars, v, _i, _len, _ref2;
-      realVars = [];
-      tempVars = [];
-      _ref2 = this.variables;
-      for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
-        v = _ref2[_i];
-        if (v.type === 'var') {
-          (v.name.charAt(0) === '_' ? tempVars : realVars).push(v.name);
-        }
-      }
-      return realVars.sort().concat(tempVars.sort());
-    };
-
-    Scope.prototype.assignedVariables = function() {
-      var v, _i, _len, _ref2, _results;
-      _ref2 = this.variables;
-      _results = [];
-      for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
-        v = _ref2[_i];
-        if (v.type.assigned) _results.push("" + v.name + " = " + v.type.value);
-      }
-      return _results;
-    };
-
-    return Scope;
-
-  })();
-
-}).call(this);

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/coffee-script/package.json
----------------------------------------------------------------------
diff --git a/node_modules/coffee-script/package.json b/node_modules/coffee-script/package.json
deleted file mode 100644
index 2547bdf..0000000
--- a/node_modules/coffee-script/package.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
-  "name":         "coffee-script",
-  "description":  "Unfancy JavaScript",
-  "keywords":     ["javascript", "language", "coffeescript", "compiler"],
-  "author":       "Jeremy Ashkenas",
-  "version":      "1.2.0",
-  "licenses":     [{
-    "type":       "MIT",
-    "url":        "http://github.com/jashkenas/coffee-script/raw/master/LICENSE"
-  }],
-  "engines":      {
-    "node":       ">=0.4.0"
-  },
-  "directories" : {
-    "lib" : "./lib/coffee-script"
-  },
-  "main" : "./lib/coffee-script/coffee-script",
-  "bin":          {
-    "coffee":     "./bin/coffee",
-    "cake":       "./bin/cake"
-  },
-  "homepage":     "http://coffeescript.org",
-  "repository":   {
-    "type": "git",
-    "url": "git://github.com/jashkenas/coffee-script.git"
-  },
-  "devDependencies": {
-    "uglify-js":  ">=1.0.0",
-    "jison":      ">=0.2.0"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/.npmignore
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/.npmignore b/node_modules/nodeunit/.npmignore
deleted file mode 100644
index 1a82501..0000000
--- a/node_modules/nodeunit/.npmignore
+++ /dev/null
@@ -1,3 +0,0 @@
-dist
-stamp-build
-test/fixtures/dir2

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/CONTRIBUTORS.md
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/CONTRIBUTORS.md b/node_modules/nodeunit/CONTRIBUTORS.md
deleted file mode 100644
index fba3609..0000000
--- a/node_modules/nodeunit/CONTRIBUTORS.md
+++ /dev/null
@@ -1,68 +0,0 @@
-Nodeunit contributors (sorted alphabeticaly)
-============================================
-
-* **[Alex Gorbatchev](https://github.com/alexgorbatchev)**
-
-  * Deeper default object inspection
-  * Timeout to ensure flushing of console output (default reporter)
-
-* **[Alex Wolfe](https://github.com/alexkwolfe)**
-
-  * HTML test reporter
-
-* **[Caolan McMahon](https://github.com/caolan)**
-
-  * Author and maintainer
-  * Most features develpopment
-
-* **[Carl Fürstenberg](https://github.com/azatoth)**
-
-  * Debian-friendly Makefile, supports both 'node' and 'nodejs' executables
-  * Sandbox utility
-  * Minimal test reporter
-
-* **[Gerad Suyderhoud](https://github.com/gerad)**
-
-  * First comand-line tool
-
-* **[Kadir Pekel](https://github.com/kadirpekel)**
-
-  * Improvements to default test reporter
-  * HTTP test utility
-
-* **[Λlisue](https://github.com/lambdalisue)**
-
-  * Add machineout reporter
-
-* **[Matthias Lübken](https://github.com/luebken)**
-
-  * Utility functions for tracking incomplete tests on exit
-
-* **[Oleg Efimov](https://github.com/Sannis)**
-
-  * Adding 'make lint' and fixing nodelint errors
-  * Option parsing, --help text and config file support
-  * Reporters option for command-line tool
-
-* **[Orlando Vazquez](https://github.com/orlandov)**
-
-  * Added jUnit XML reporter
-
-* **[Ryan Dahl](https://github.com/ry)**
-
-  * Add package.json
-
-* **[Sam Stephenson](https://github.com/sstephenson)**
-
-  * Coffee-script support
-
-* **[Thomas Mayfield](https://github.com/thegreatape)**
-
-  * Async setUp and tearDown support for testCase
-
-* **[Maciej Małecki](https://github.com/mmalecki)**
-
-  * Removal of `testCase`
-
-**[Full contributors list](https://github.com/caolan/nodeunit/contributors).**
-

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/LICENSE
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/LICENSE b/node_modules/nodeunit/LICENSE
deleted file mode 100644
index b7f9d50..0000000
--- a/node_modules/nodeunit/LICENSE
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (c) 2010 Caolan McMahon
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/Makefile
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/Makefile b/node_modules/nodeunit/Makefile
deleted file mode 100644
index 31fdb0e..0000000
--- a/node_modules/nodeunit/Makefile
+++ /dev/null
@@ -1,176 +0,0 @@
-PACKAGE = nodeunit
-NODEJS = $(if $(shell test -f /usr/bin/nodejs && echo "true"),nodejs,node)
-
-PREFIX ?= /usr/local
-BINDIR ?= $(PREFIX)/bin
-DATADIR ?= $(PREFIX)/share
-MANDIR ?= $(PREFIX)/share/man
-LIBDIR ?= $(PREFIX)/lib
-NODEJSLIBDIR ?= $(LIBDIR)/$(NODEJS)
-
-BUILDDIR = dist
-
-DOCS = $(shell find doc -name '*.md' \
-				|sed 's|.md|.1|g' \
-				|sed 's|doc/|man1/|g' \
-				)
-
-
-$(shell if [ ! -d $(BUILDDIR) ]; then mkdir $(BUILDDIR); fi)
-
-all: build doc
-
-browser:
-	# super hacky build script for browser version!
-	mkdir -p $(BUILDDIR)/browser
-	rm -rf $(BUILDDIR)/browser/*
-	# build browser version of nodeunit.js
-	cat share/license.js >> $(BUILDDIR)/browser/nodeunit.js
-	echo "nodeunit = (function(){" >> $(BUILDDIR)/browser/nodeunit.js
-	cat deps/json2.js >> $(BUILDDIR)/browser/nodeunit.js
-	# make assert global
-	echo "var assert = this.assert = {};" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "var types = {};" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "var core = {};" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "var nodeunit = {};" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "var reporter = {};" >> $(BUILDDIR)/browser/nodeunit.js
-	cat deps/async.js >> $(BUILDDIR)/browser/nodeunit.js
-	echo "(function(exports){" >> $(BUILDDIR)/browser/nodeunit.js
-	cat lib/assert.js >> $(BUILDDIR)/browser/nodeunit.js
-	echo "})(assert);" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "(function(exports){" >> $(BUILDDIR)/browser/nodeunit.js
-	cat lib/types.js >> $(BUILDDIR)/browser/nodeunit.js
-	echo "})(types);" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "(function(exports){" >> $(BUILDDIR)/browser/nodeunit.js
-	cat lib/core.js >> $(BUILDDIR)/browser/nodeunit.js
-	echo "})(core);" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "(function(exports){" >> $(BUILDDIR)/browser/nodeunit.js
-	cat lib/reporters/browser.js >> $(BUILDDIR)/browser/nodeunit.js
-	echo "})(reporter);" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "nodeunit = core;" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "nodeunit.assert = assert;" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "nodeunit.reporter = reporter;" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "nodeunit.run = reporter.run;" >> $(BUILDDIR)/browser/nodeunit.js
-	echo "return nodeunit; })();" >> $(BUILDDIR)/browser/nodeunit.js
-	cp $(BUILDDIR)/browser/nodeunit.js $(BUILDDIR)/browser/.nodeunit.js
-	sed "/\@REMOVE_LINE_FOR_BROWSER/d" <$(BUILDDIR)/browser/.nodeunit.js > $(BUILDDIR)/browser/nodeunit.js
-	rm $(BUILDDIR)/browser/.nodeunit.js
-	# copy nodeunit.css
-	cp share/nodeunit.css $(BUILDDIR)/browser/nodeunit.css
-	# create nodeunit.min.js
-	node_modules/uglify-js/bin/uglifyjs $(BUILDDIR)/browser/nodeunit.js > $(BUILDDIR)/browser/nodeunit.min.js
-	# create test scripts
-	mkdir -p $(BUILDDIR)/browser/test
-	cp test/test.html $(BUILDDIR)/browser/test/test.html
-	# test-base.js
-	echo "(function (exports) {" > $(BUILDDIR)/browser/test/test-base.js
-	cat test/test-base.js >> $(BUILDDIR)/browser/test/test-base.js
-	echo "})(this.test_base = {});" >> $(BUILDDIR)/browser/test/test-base.js
-	cp $(BUILDDIR)/browser/test/test-base.js $(BUILDDIR)/browser/.test-base.js
-	sed "/\@REMOVE_LINE_FOR_BROWSER/d" <$(BUILDDIR)/browser/.test-base.js > $(BUILDDIR)/browser/test/test-base.js
-	rm $(BUILDDIR)/browser/.test-base.js
-	# test-runmodule.js
-	echo "(function (exports) {" > $(BUILDDIR)/browser/test/test-runmodule.js
-	cat test/test-runmodule.js >> $(BUILDDIR)/browser/test/test-runmodule.js
-	echo "})(this.test_runmodule = {});" >> $(BUILDDIR)/browser/test/test-runmodule.js
-	cp $(BUILDDIR)/browser/test/test-runmodule.js $(BUILDDIR)/browser/.test-runmodule.js
-	sed "/\@REMOVE_LINE_FOR_BROWSER/d" <$(BUILDDIR)/browser/.test-runmodule.js > $(BUILDDIR)/browser/test/test-runmodule.js
-	rm $(BUILDDIR)/browser/.test-runmodule.js
-	# test-runtest.js
-	echo "(function (exports) {" > $(BUILDDIR)/browser/test/test-runtest.js
-	cat test/test-runtest.js >> $(BUILDDIR)/browser/test/test-runtest.js
-	echo "})(this.test_runtest = {});" >> $(BUILDDIR)/browser/test/test-runtest.js
-	cp $(BUILDDIR)/browser/test/test-runtest.js $(BUILDDIR)/browser/.test-runtest.js
-	sed "/\@REMOVE_LINE_FOR_BROWSER/d" <$(BUILDDIR)/browser/.test-runtest.js > $(BUILDDIR)/browser/test/test-runtest.js
-	rm $(BUILDDIR)/browser/.test-runtest.js
-	# test-testcase.js
-	echo "(function (exports) {" > $(BUILDDIR)/browser/test/test-testcase.js
-	cat test/test-testcase.js >> $(BUILDDIR)/browser/test/test-testcase.js
-	echo "})(this.test_testcase = {});" >> $(BUILDDIR)/browser/test/test-testcase.js
-	cp $(BUILDDIR)/browser/test/test-testcase.js $(BUILDDIR)/browser/.test-testcase.js
-	sed "/\@REMOVE_LINE_FOR_BROWSER/d" <$(BUILDDIR)/browser/.test-testcase.js > $(BUILDDIR)/browser/test/test-testcase.js
-	rm $(BUILDDIR)/browser/.test-testcase.js
-	# test-testcase-legacy.js
-	echo "(function (exports) {" > $(BUILDDIR)/browser/test/test-testcase-legacy.js
-	cat test/test-testcase-legacy.js >> $(BUILDDIR)/browser/test/test-testcase-legacy.js
-	echo "})(this.test_testcase_legacy = {});" >> $(BUILDDIR)/browser/test/test-testcase-legacy.js
-	cp $(BUILDDIR)/browser/test/test-testcase-legacy.js $(BUILDDIR)/browser/.test-testcase-legacy.js
-	sed "/\@REMOVE_LINE_FOR_BROWSER/d" <$(BUILDDIR)/browser/.test-testcase-legacy.js > $(BUILDDIR)/browser/test/test-testcase-legacy.js
-	rm $(BUILDDIR)/browser/.test-testcase-legacy.js
-	# copy nodeunit.js to dist/browser/test to make it easier for me to host and
-	# run on windows VMs with IE
-	cp $(BUILDDIR)/browser/nodeunit.js $(BUILDDIR)/browser/test/nodeunit.js
-	cp $(BUILDDIR)/browser/nodeunit.css $(BUILDDIR)/browser/test/nodeunit.css
-
-commonjs:
-	# super hacky build script for browser commonjs version!
-	##### make commonjs browser module ######
-	mkdir -p $(BUILDDIR)/commonjs
-	mkdir -p $(BUILDDIR)/commonjs/deps
-	cp deps/json2.js $(BUILDDIR)/commonjs/deps
-	cp deps/async.js $(BUILDDIR)/commonjs/deps
-	echo "var async = require('async');" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "var assert = {};" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "var types = {};" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "var core = {};" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "var nodeunit = {};" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "var reporter = {};" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "(function(exports){" >> $(BUILDDIR)/commonjs/nodeunit.js
-	cat lib/assert.js >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "})(assert);" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "(function(exports){" >> $(BUILDDIR)/commonjs/nodeunit.js
-	cat lib/types.js >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "})(types);" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "(function(exports){" >> $(BUILDDIR)/commonjs/nodeunit.js
-	cat lib/core.js >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "})(core);" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "module.exports = core;" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "(function(exports, nodeunit){" >> $(BUILDDIR)/commonjs/nodeunit.js
-	cat lib/reporters/browser.js >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "})(reporter, module.exports);" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "module.exports.assert = assert;" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "module.exports.reporter = reporter;" >> $(BUILDDIR)/commonjs/nodeunit.js
-	echo "module.exports.run = reporter.run;" >> $(BUILDDIR)/commonjs/nodeunit.js
-	sed -i "/\@REMOVE_LINE_FOR_BROWSER/d" $(BUILDDIR)/commonjs/nodeunit.js
-	sed -i "/\@REMOVE_LINE_FOR_COMMONJS/d" $(BUILDDIR)/commonjs/nodeunit.js
-	##### end of commonjs browser module #####
-
-build: stamp-build
-
-stamp-build: $(wildcard  deps/* lib/*.js)
-	touch $@;
-	mkdir -p $(BUILDDIR)/nodeunit
-	cp -R bin node_modules deps index.js lib package.json share $(BUILDDIR)/nodeunit
-	printf '#!/bin/sh\n$(NODEJS) $(NODEJSLIBDIR)/$(PACKAGE)/bin/nodeunit $$@' > $(BUILDDIR)/nodeunit.sh
-
-test:
-	$(NODEJS) ./bin/nodeunit test
-
-install: build
-	install -d $(NODEJSLIBDIR)
-	cp -a $(BUILDDIR)/nodeunit $(NODEJSLIBDIR)
-	install -m 0755 $(BUILDDIR)/nodeunit.sh $(BINDIR)/nodeunit
-	install -d $(MANDIR)/man1/
-	cp -a man1/nodeunit.1 $(MANDIR)/man1/
-
-uninstall:
-	rm -rf $(NODEJSLIBDIR)/nodeunit $(NODEJSLIBDIR)/nodeunit.js $(BINDIR)/nodeunit
-	rm -rf $(MANDIR)/man1/nodeunit.1
-
-clean:
-	rm -rf $(BUILDDIR) stamp-build
-
-lint:
-	nodelint --config nodelint.cfg ./index.js ./bin/nodeunit ./bin/nodeunit.json ./lib/*.js ./lib/reporters/*.js ./test/*.js
-
-doc: man1 $(DOCS)
-	@true
-
-man1:
-	@if ! test -d man1 ; then mkdir -p man1 ; fi
-
-# use `npm install ronn` for this to work.
-man1/%.1: doc/%.md
-	ronn --roff $< > $@
-
-.PHONY: browser test install uninstall build all

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/README.md
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/README.md b/node_modules/nodeunit/README.md
deleted file mode 100644
index 359a9c7..0000000
--- a/node_modules/nodeunit/README.md
+++ /dev/null
@@ -1,443 +0,0 @@
-Nodeunit
-========
-
-Simple syntax, powerful tools. Nodeunit provides easy async unit testing for
-node.js and the browser.
-
-* Simple to use
-* Just export the tests from a module
-* Works with node.js and in the browser.
-* Helps you avoid common pitfalls when testing asynchronous code
-* Easy to add test cases with setUp and tearDown functions if you wish
-* Flexible reporters for custom output, built-in support for HTML and jUnit XML
-* Allows the use of mocks and stubs
-
-__Contributors__
-
-* [alexgorbatchev](https://github.com/alexgorbatchev)
-* [alexkwolfe](https://github.com/alexkwolfe)
-* [azatoth](https://github.com/azatoth)
-* [kadirpekel](https://github.com/kadirpekel)
-* [lambdalisue](https://github.com/lambdalisue)
-* [luebken](https://github.com/luebken)
-* [orlandov](https://github.com/orlandov)
-* [Sannis](https://github.com/Sannis)
-* [sstephenson](https://github.com/sstephenson)
-* [thegreatape](https://github.com/thegreatape)
-* [mmalecki](https://github.com/mmalecki)
-* and thanks to [cjohansen](https://github.com/cjohansen) for input and advice
-  on implementing setUp and tearDown functions. See
-  [cjohansen's fork](https://github.com/cjohansen/nodeunit).
-
-Also, check out gerad's [nodeunit-dsl](https://github.com/gerad/nodeunit-dsl)
-project, which implements a 'pretty dsl on top of nodeunit'.
-
-More contributor information can be found in the
-[CONTRIBUTORS.md](https://github.com/caolan/nodeunit/blob/master/CONTRIBUTORS.md)
-file.
-
-Usage
------
-
-Here is an example unit test module:
-
-    exports.testSomething = function(test){
-        test.expect(1);
-        test.ok(true, "this assertion should pass");
-        test.done();
-    };
-
-    exports.testSomethingElse = function(test){
-        test.ok(false, "this assertion should fail");
-        test.done();
-    };
-
-When run using the included test runner, this will output the following:
-
-<img src="https://github.com/caolan/nodeunit/raw/master/img/example_fail.png" />
-
-Installation
-------------
-
-There are two options for installing nodeunit:
-
-1. Clone / download nodeunit from [github](https://github.com/caolan/nodeunit),
-   then:
-
-    make && sudo make install
-
-2. Install via npm:
-
-    npm install nodeunit
-
-API Documentation
------------------
-
-Nodeunit uses the functions available in the node.js
-[assert module](http://nodejs.org/docs/v0.4.2/api/assert.html):
-
-* __ok(value, [message])__ - Tests if value is a true value.
-* __equal(actual, expected, [message])__ - Tests shallow, coercive equality
-  with the equal comparison operator ( == ).
-* __notEqual(actual, expected, [message])__ - Tests shallow, coercive
-  non-equality with the not equal comparison operator ( != ).
-* __deepEqual(actual, expected, [message])__ - Tests for deep equality.
-* __notDeepEqual(actual, expected, [message])__ - Tests for any deep
-  inequality.
-* __strictEqual(actual, expected, [message])__ - Tests strict equality, as
-  determined by the strict equality operator ( === )
-* __notStrictEqual(actual, expected, [message])__ - Tests strict non-equality,
-  as determined by the strict not equal operator ( !== )
-* __throws(block, [error], [message])__ - Expects block to throw an error.
-* __doesNotThrow(block, [error], [message])__ - Expects block not to throw an
-  error.
-* __ifError(value)__ - Tests if value is not a false value, throws if it is a
-  true value. Useful when testing the first argument, error in callbacks.
-
-Nodeunit also provides the following functions within tests:
-
-* __expect(amount)__ - Specify how many assertions are expected to run within a
-  test. Very useful for ensuring that all your callbacks and assertions are
-  run.
-* __done()__ - Finish the current test function, and move on to the next. ALL
-  tests should call this!
-
-Nodeunit aims to be simple and easy to learn. This is achieved through using
-existing structures (such as node.js modules) to maximum effect, and reducing
-the API where possible, to make it easier to digest.
-
-Tests are simply exported from a module, but they are still run in the order
-they are defined.
-
-__Note:__ Users of old nodeunit versions may remember using ok, equals and same
-in the style of qunit, instead of the assert functions above. These functions
-still exist for backwards compatibility, and are simply aliases to their assert
-module counterparts.
-
-
-Asynchronous Testing
---------------------
-
-When testing asynchronous code, there are a number of sharp edges to watch out
-for. Thankfully, nodeunit is designed to help you avoid as many of these
-pitfalls as possible. For the most part, testing asynchronous code in nodeunit
-_just works_.
-
-
-### Tests run in series
-
-While running tests in parallel seems like a good idea for speeding up your
-test suite, in practice I've found it means writing much more complicated
-tests. Because of node's module cache, running tests in parallel means mocking
-and stubbing is pretty much impossible. One of the nicest things about testing
-in javascript is the ease of doing stubs:
-
-    var _readFile = fs.readFile;
-    fs.readFile = function(path, callback){
-        // its a stub!
-    };
-    // test function that uses fs.readFile
-
-    // we're done
-    fs.readFile = _readFile;
-
-You cannot do this when running tests in parallel. In order to keep testing as
-simple as possible, nodeunit avoids it. Thankfully, most unit-test suites run
-fast anyway.
-
-
-### Explicit ending of tests
-
-When testing async code its important that tests end at the correct point, not
-just after a given number of assertions. Otherwise your tests can run short,
-ending before all assertions have completed. Its important to detect too
-many assertions as well as too few. Combining explicit ending of tests with
-an expected number of assertions helps to avoid false test passes, so be sure
-to use the test.expect() method at the start of your test functions, and
-test.done() when finished.
-
-
-Groups, setUp and tearDown
---------------------------
-
-Nodeunit allows the nesting of test functions:
-
-    exports.test1 = function (test) {
-        ...
-    }
-
-    exports.group = {
-        test2: function (test) {
-            ...
-        },
-        test3: function (test) {
-            ...
-        }
-    }
-
-This would be run as:
-
-    test1
-    group - test2
-    group - test3
-
-Using these groups, Nodeunit allows you to define a `setUp` function, which is
-run before each test, and a `tearDown` function, which is run after each test
-calls `test.done()`:
-
-    module.exports = {
-        setUp: function (callback) {
-            this.foo = 'bar';
-            callback();
-        },
-        tearDown: function (callback) {
-            // clean up
-            callback();
-        },
-        test1: function (test) {
-            test.equals(this.foo, 'bar');
-            test.done();
-        }
-    };
-
-In this way, its possible to have multiple groups of tests in a module, each
-group with its own setUp and tearDown functions.
-
-
-Running Tests
--------------
-
-Nodeunit comes with a basic command-line test runner, which can be installed
-using 'sudo make install'. Example usage:
-
-    nodeunit testmodule1.js testfolder [...]
-
-The default test reporter uses color output, because I think that's more fun :) I
-intend to add a no-color option in future. To give you a feeling of the fun you'll
-be having writing tests, lets fix the example at the start of the README:
-
-<img src="https://github.com/caolan/nodeunit/raw/master/img/example_pass.png" />
-
-Ahhh, Doesn't that feel better?
-
-When using the included test runner, it will exit using the failed number of
-assertions as the exit code. Exiting with 0 when all tests pass.
-
-
-### Command-line Options
-
-* __--reporter FILE__ - you can set the test reporter to a custom module or
-on of the modules in nodeunit/lib/reporters, when omitted, the default test runner
-is used.
-* __--list-reporters__ - list available build-in reporters.
-* __--config FILE__ - load config options from a JSON file, allows
-the customisation of color schemes for the default test reporter etc. See
-bin/nodeunit.json for current available options.
-* __--version__ or __-v__ - report nodeunit version
-* __--help__ - show nodeunit help
-
-
-Running tests in the browser
-----------------------------
-
-Nodeunit tests can also be run inside the browser. For example usage, see
-the examples/browser folder. The basic syntax is as follows:
-
-__test.html__
-
-    <html>
-      <head>
-        <title>Example Test Suite</title>
-        <link rel="stylesheet" href="nodeunit.css" type="text/css" />
-        <script src="nodeunit.js"></script>
-        <script src="suite1.js"></script>
-        <script src="suite2.js"></script>
-      </head>
-      <body>
-        <h1 id="nodeunit-header>Example Test Suite</h1>
-        <script>
-          nodeunit.run({
-            'Suite One': suite1,
-            'Suite Two': suite2
-          });
-        </script>
-      </body>
-    </html>
-
-Here, suite1 and suite2 are just object literals containing test functions or
-groups, as would be returned if you did require('test-suite') in node.js:
-
-__suite1.js__
-
-    this.suite1 = {
-        'example test': function (test) {
-            test.ok(true, 'everything is ok');
-            test.done();
-        }
-    };
-
-If you wish to use a commonjs format for your test suites (using exports), it is
-up to you to define the commonjs tools for the browser. There are a number of
-alternatives and its important it fits with your existing code, which is
-why nodeunit does not currently provide this out of the box.
-
-In the example above, the tests will run when the page is loaded.
-
-The browser-version of nodeunit.js is created in dist/browser when you do, 'make
-browser'. You'll need [UglifyJS](https://github.com/mishoo/UglifyJS) installed in
-order for it to automatically create nodeunit.min.js.
-
-
-Adding nodeunit to Your Projects
---------------------------------
-
-If you don't want people to have to install the nodeunit command-line tool,
-you'll want to create a script that runs the tests for your project with the
-correct require paths set up. Here's an example test script, that assumes you
-have nodeunit in a suitably located node_modules directory.
-
-    #!/usr/bin/env node
-    var reporter = require('nodeunit').reporters.default;
-    reporter.run(['test']);
-
-If you're using git, you might find it useful to include nodeunit as a
-submodule. Using submodules makes it easy for developers to download nodeunit
-and run your test suite, without cluttering up your repository with
-the source code. To add nodeunit as a git submodule do the following:
-
-    git submodule add git://github.com/caolan/nodeunit.git node_modules/nodeunit
-
-This will add nodeunit to the node_modules folder of your project. Now, when
-cloning the repository, nodeunit can be downloaded by doing the following:
-
-    git submodule init
-    git submodule update
-
-Let's update the test script above with a helpful hint on how to get nodeunit,
-if its missing:
-
-    #!/usr/bin/env node
-    try {
-        var reporter = require('nodeunit').reporters.default;
-    }
-    catch(e) {
-        console.log("Cannot find nodeunit module.");
-        console.log("You can download submodules for this project by doing:");
-        console.log("");
-        console.log("    git submodule init");
-        console.log("    git submodule update");
-        console.log("");
-        process.exit();
-    }
-
-    process.chdir(__dirname);
-    reporter.run(['test']);
-
-Now if someone attempts to run your test suite without nodeunit installed they
-will be prompted to download the submodules for your project.
-
-
-Built-in Test Reporters
------------------------
-
-* __default__ - The standard reporter seen in the nodeunit screenshots
-* __minimal__ - Pretty, minimal output, shows errors and progress only
-* __html__ - Outputs a HTML report to stdout
-* __junit__ - Creates jUnit compatible XML reports, which can be used with
-  continuous integration tools such as [Hudson](http://hudson-ci.org/).
-* __machineout__ - Simple reporter for machine analysis. There is [nodeunit.vim](https://github.com/lambdalisue/nodeunit.vim)
-  which is useful for TDD on VIM
-
-
-Writing a Test Reporter
----------------------
-
-Nodeunit exports runTest(fn, options), runModule(mod, options) and
-runFiles(paths, options). You'll most likely want to run test suites from
-files, which can be done using the latter function. The _options_ argument can
-contain callbacks which run during testing. Nodeunit provides the following
-callbacks:
-
-* __moduleStart(name)__ - called before a module is tested
-* __moduleDone(name, assertions)__ - called once all test functions within the
-  module have completed (see assertions object reference below)
-  ALL tests within the module
-* __testStart(name)__ - called before a test function is run
-* __testDone(name, assertions)__ - called once a test function has completed
-  (by calling test.done())
-* __log(assertion)__ - called whenever an assertion is made (see assertion
-  object reference below)
-* __done(assertions)__ - called after all tests/modules are complete
-
-The __assertion__ object:
-
-* __passed()__ - did the assertion pass?
-* __failed()__ - did the assertion fail?
-* __error__ - the AssertionError if the assertion failed
-* __method__ - the nodeunit assertion method used (ok, same, equals...)
-* __message__ - the message the assertion method was called with (optional)
-
-The __assertionList__ object:
-
-* An array-like object with the following new attributes:
-  * __failures()__ - the number of assertions which failed
-  * __duration__ - the time taken for the test to complete in msecs
-
-For a reference implementation of a test reporter, see lib/reporters/default.js in
-the nodeunit project directory.
-
-
-Sandbox utility
----------------
-
-This is a function which evaluates JavaScript files in a sandbox and returns the
-context. The sandbox function can be used for testing client-side code or private
-un-exported functions within a module.
-
-    var sandbox = require('nodeunit').utils.sandbox;
-    var example = sandbox('example.js');
-
-__sandbox(files, sandbox)__ - Evaluates JavaScript files in a sandbox, returning
-the context. The first argument can either be a single filename or an array of
-filenames. If multiple filenames are given their contents are concatenated before
-evalution. The second argument is an optional context to use for the sandbox.
-
-
-Running the nodeunit Tests
---------------------------
-
-The tests for nodeunit are written using nodeunit itself as the test framework.
-However, the module test-base.js first does some basic tests using the assert
-module to ensure that test functions are actually run, and a basic level of
-nodeunit functionality is available.
-
-To run the nodeunit tests do:
-
-    make test
-
-__Note:__ There was a bug in node v0.2.0 causing the tests to hang, upgrading
-to v0.2.1 fixes this.
-
-
-__machineout__ reporter
-----------------------------------------------
-
-The default reporter is really readable for human but for machinally analysis. 
-When you want to analyze the output of nodeunit, use __machineout__ reporter and you will get
-
-<img src="https://github.com/caolan/nodeunit/raw/master/img/example_machineout.png" />
-
-
-nodeunit with vim
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-There is [nodeunit.vim](https://github.com/lambdalisue/nodeunit.vim) so you can use nodeunit with VIM.
-That compiler use __machineout__ reporter and it is useful to use with [vim-makegreen](https://github.com/reinh/vim-makegreen)
-
-    
-
-Contributing
-------------
-
-Contributions to the project are most welcome, so feel free to fork and improve.
-When submitting a pull request, please run 'make lint' first to ensure
-we're following a consistent coding style.

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/bin/nodeunit
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/bin/nodeunit b/node_modules/nodeunit/bin/nodeunit
deleted file mode 100755
index b11cfb1..0000000
--- a/node_modules/nodeunit/bin/nodeunit
+++ /dev/null
@@ -1,125 +0,0 @@
-#!/usr/bin/env node
-
-var
-    fs = require('fs'),
-    path = require('path');
-
-// TODO: remove this when https://github.com/joyent/node/pull/1312
-//       lands in core.
-//
-// Until then, use console.log from npm (https://gist.github.com/1077544)
-require('../deps/console.log');
-
-//require.paths.push(process.cwd());
-var args = (process.ARGV || process.argv).slice(2);
-
-var files = [];
-
-var testrunner,
-    config_file,
-    config_param_found = false,
-    output_param_found = false,
-    reporter_file = 'default',
-    reporter_param_found = false,
-    testspec_param_found = false;
-
-var usage = "Usage: nodeunit [options] testmodule1.js testfolder [...] \n" +
-            "Options:\n\n" +
-            "  --config FILE     the path to a JSON file with options\n" +
-            "  --reporter FILE   optional path to a reporter file to customize the output\n" +
-            "  --list-reporters  list available build-in reporters\n" +
-            "  -t name,          specify a test to run\n" +
-            "  -h, --help        display this help and exit\n" +
-            "  -v, --version     output version information and exit";
-
-
-// load default options
-var content = fs.readFileSync(__dirname + '/nodeunit.json', 'utf8');
-var options = JSON.parse(content);
-
-// a very basic pseudo --options parser
-args.forEach(function (arg) {
-    if (arg.slice(0, 9) === "--config=") {
-        config_file = arg.slice(9);
-    } else if (arg === '--config') {
-        config_param_found = true;
-    } else if (config_param_found) {
-        config_file = arg;
-        config_param_found = false;
-    } else if (arg.slice(0, 9) === "--output=") {
-        options.output = arg.slice(9);
-    } else if (arg === '--output') {
-        output_param_found = true;
-    } else if (output_param_found) {
-        options.output = arg;
-        output_param_found = false;
-    } else if (arg.slice(0, 11) === "--reporter=") {
-        reporter_file = arg.slice(11);
-    } else if (arg === '--reporter') {
-        reporter_param_found = true;
-    } else if (reporter_param_found) {
-        reporter_file = arg;
-        reporter_param_found = false;
-    } else if (arg === '-t') {
-        testspec_param_found = true;
-    } else if (testspec_param_found) {
-        options.testspec = arg;
-        testspec_param_found = false;
-    } else if (arg === '--list-reporters') {
-        var reporters = fs.readdirSync(__dirname + '/../lib/reporters');
-        reporters = reporters.filter(function (reporter_file) {
-            return (/\.js$/).test(reporter_file);
-        }).map(function (reporter_file) {
-            return reporter_file.replace(/\.js$/, '');
-        }).filter(function (reporter_file) {
-            return reporter_file !== 'index';
-        });
-        console.log('Build-in reporters: ');
-        reporters.forEach(function (reporter_file) {
-            var reporter = require('../lib/reporters/' + reporter_file);
-            console.log('  * ' + reporter_file + (reporter.info ? ': ' + reporter.info : ''));
-        });
-        process.exit(0);
-    } else if ((arg === '-v') || (arg === '--version')) {
-        var content = fs.readFileSync(__dirname + '/../package.json', 'utf8');
-        var pkg = JSON.parse(content);
-        console.log(pkg.version);
-        process.exit(0);
-    } else if ((arg === '-h') || (arg === '--help')) {
-        console.log(usage);
-        process.exit(0);
-    } else {
-        files.push(arg);
-    }
-});
-
-if (files.length === 0) {
-    console.log('Files required.');
-    console.log(usage);
-    process.exit(1);
-}
-
-if (config_file) {
-    content = fs.readFileSync(config_file, 'utf8');
-    var custom_options = JSON.parse(content);
-
-    for (var option in custom_options) {
-        if (typeof option === 'string') {
-            options[option] = custom_options[option];
-        }
-    }
-}
-
-var builtin_reporters = require(__dirname + '/../lib/reporters');
-if (reporter_file in builtin_reporters) {
-    testrunner = builtin_reporters[reporter_file];
-}
-else {
-    testrunner = require(reporter_file);
-}
-
-testrunner.run(files, options, function(err) {
-    if (err) {
-        process.exit(1);
-    }
-});

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/bin/nodeunit.json
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/bin/nodeunit.json b/node_modules/nodeunit/bin/nodeunit.json
deleted file mode 100644
index 5c7778f..0000000
--- a/node_modules/nodeunit/bin/nodeunit.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
-    "error_prefix": "\u001B[31m",
-    "error_suffix": "\u001B[39m",
-    "ok_prefix": "\u001B[32m",
-    "ok_suffix": "\u001B[39m",
-    "bold_prefix": "\u001B[1m",
-    "bold_suffix": "\u001B[22m",
-    "assertion_prefix": "\u001B[35m",
-    "assertion_suffix": "\u001B[39m"
-}

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/deps/async.js
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/deps/async.js b/node_modules/nodeunit/deps/async.js
deleted file mode 100644
index d81255f..0000000
--- a/node_modules/nodeunit/deps/async.js
+++ /dev/null
@@ -1,623 +0,0 @@
-/*global setTimeout: false, console: false */
-(function () {
-
-    var async = {};
-
-    // global on the server, window in the browser
-    var root = this,
-        previous_async = root.async;
-
-    if (typeof module !== 'undefined' && module.exports) {
-        module.exports = async;
-    }
-    else {
-        root.async = async;
-    }
-
-    async.noConflict = function () {
-        root.async = previous_async;
-        return async;
-    };
-
-    //// cross-browser compatiblity functions ////
-
-    var _forEach = function (arr, iterator) {
-        if (arr.forEach) {
-            return arr.forEach(iterator);
-        }
-        for (var i = 0; i < arr.length; i += 1) {
-            iterator(arr[i], i, arr);
-        }
-    };
-
-    var _map = function (arr, iterator) {
-        if (arr.map) {
-            return arr.map(iterator);
-        }
-        var results = [];
-        _forEach(arr, function (x, i, a) {
-            results.push(iterator(x, i, a));
-        });
-        return results;
-    };
-
-    var _reduce = function (arr, iterator, memo) {
-        if (arr.reduce) {
-            return arr.reduce(iterator, memo);
-        }
-        _forEach(arr, function (x, i, a) {
-            memo = iterator(memo, x, i, a);
-        });
-        return memo;
-    };
-
-    var _keys = function (obj) {
-        if (Object.keys) {
-            return Object.keys(obj);
-        }
-        var keys = [];
-        for (var k in obj) {
-            if (obj.hasOwnProperty(k)) {
-                keys.push(k);
-            }
-        }
-        return keys;
-    };
-
-    var _indexOf = function (arr, item) {
-        if (arr.indexOf) {
-            return arr.indexOf(item);
-        }
-        for (var i = 0; i < arr.length; i += 1) {
-            if (arr[i] === item) {
-                return i;
-            }
-        }
-        return -1;
-    };
-
-    //// exported async module functions ////
-
-    //// nextTick implementation with browser-compatible fallback ////
-    if (typeof process === 'undefined' || !(process.nextTick)) {
-        async.nextTick = function (fn) {
-            setTimeout(fn, 0);
-        };
-    }
-    else {
-        async.nextTick = process.nextTick;
-    }
-
-    async.forEach = function (arr, iterator, callback) {
-        if (!arr.length) {
-            return callback();
-        }
-        var completed = 0;
-        _forEach(arr, function (x) {
-            iterator(x, function (err) {
-                if (err) {
-                    callback(err);
-                    callback = function () {};
-                }
-                else {
-                    completed += 1;
-                    if (completed === arr.length) {
-                        callback();
-                    }
-                }
-            });
-        });
-    };
-
-    async.forEachSeries = function (arr, iterator, callback) {
-        if (!arr.length) {
-            return callback();
-        }
-        var completed = 0;
-        var iterate = function () {
-            iterator(arr[completed], function (err) {
-                if (err) {
-                    callback(err);
-                    callback = function () {};
-                }
-                else {
-                    completed += 1;
-                    if (completed === arr.length) {
-                        callback();
-                    }
-                    else {
-                        iterate();
-                    }
-                }
-            });
-        };
-        iterate();
-    };
-
-
-    var doParallel = function (fn) {
-        return function () {
-            var args = Array.prototype.slice.call(arguments);
-            return fn.apply(null, [async.forEach].concat(args));
-        };
-    };
-    var doSeries = function (fn) {
-        return function () {
-            var args = Array.prototype.slice.call(arguments);
-            return fn.apply(null, [async.forEachSeries].concat(args));
-        };
-    };
-
-
-    var _asyncMap = function (eachfn, arr, iterator, callback) {
-        var results = [];
-        arr = _map(arr, function (x, i) {
-            return {index: i, value: x};
-        });
-        eachfn(arr, function (x, callback) {
-            iterator(x.value, function (err, v) {
-                results[x.index] = v;
-                callback(err);
-            });
-        }, function (err) {
-            callback(err, results);
-        });
-    };
-    async.map = doParallel(_asyncMap);
-    async.mapSeries = doSeries(_asyncMap);
-
-
-    // reduce only has a series version, as doing reduce in parallel won't
-    // work in many situations.
-    async.reduce = function (arr, memo, iterator, callback) {
-        async.forEachSeries(arr, function (x, callback) {
-            iterator(memo, x, function (err, v) {
-                memo = v;
-                callback(err);
-            });
-        }, function (err) {
-            callback(err, memo);
-        });
-    };
-    // inject alias
-    async.inject = async.reduce;
-    // foldl alias
-    async.foldl = async.reduce;
-
-    async.reduceRight = function (arr, memo, iterator, callback) {
-        var reversed = _map(arr, function (x) {
-            return x;
-        }).reverse();
-        async.reduce(reversed, memo, iterator, callback);
-    };
-    // foldr alias
-    async.foldr = async.reduceRight;
-
-    var _filter = function (eachfn, arr, iterator, callback) {
-        var results = [];
-        arr = _map(arr, function (x, i) {
-            return {index: i, value: x};
-        });
-        eachfn(arr, function (x, callback) {
-            iterator(x.value, function (v) {
-                if (v) {
-                    results.push(x);
-                }
-                callback();
-            });
-        }, function (err) {
-            callback(_map(results.sort(function (a, b) {
-                return a.index - b.index;
-            }), function (x) {
-                return x.value;
-            }));
-        });
-    };
-    async.filter = doParallel(_filter);
-    async.filterSeries = doSeries(_filter);
-    // select alias
-    async.select = async.filter;
-    async.selectSeries = async.filterSeries;
-
-    var _reject = function (eachfn, arr, iterator, callback) {
-        var results = [];
-        arr = _map(arr, function (x, i) {
-            return {index: i, value: x};
-        });
-        eachfn(arr, function (x, callback) {
-            iterator(x.value, function (v) {
-                if (!v) {
-                    results.push(x);
-                }
-                callback();
-            });
-        }, function (err) {
-            callback(_map(results.sort(function (a, b) {
-                return a.index - b.index;
-            }), function (x) {
-                return x.value;
-            }));
-        });
-    };
-    async.reject = doParallel(_reject);
-    async.rejectSeries = doSeries(_reject);
-
-    var _detect = function (eachfn, arr, iterator, main_callback) {
-        eachfn(arr, function (x, callback) {
-            iterator(x, function (result) {
-                if (result) {
-                    main_callback(x);
-                }
-                else {
-                    callback();
-                }
-            });
-        }, function (err) {
-            main_callback();
-        });
-    };
-    async.detect = doParallel(_detect);
-    async.detectSeries = doSeries(_detect);
-
-    async.some = function (arr, iterator, main_callback) {
-        async.forEach(arr, function (x, callback) {
-            iterator(x, function (v) {
-                if (v) {
-                    main_callback(true);
-                    main_callback = function () {};
-                }
-                callback();
-            });
-        }, function (err) {
-            main_callback(false);
-        });
-    };
-    // any alias
-    async.any = async.some;
-
-    async.every = function (arr, iterator, main_callback) {
-        async.forEach(arr, function (x, callback) {
-            iterator(x, function (v) {
-                if (!v) {
-                    main_callback(false);
-                    main_callback = function () {};
-                }
-                callback();
-            });
-        }, function (err) {
-            main_callback(true);
-        });
-    };
-    // all alias
-    async.all = async.every;
-
-    async.sortBy = function (arr, iterator, callback) {
-        async.map(arr, function (x, callback) {
-            iterator(x, function (err, criteria) {
-                if (err) {
-                    callback(err);
-                }
-                else {
-                    callback(null, {value: x, criteria: criteria});
-                }
-            });
-        }, function (err, results) {
-            if (err) {
-                return callback(err);
-            }
-            else {
-                var fn = function (left, right) {
-                    var a = left.criteria, b = right.criteria;
-                    return a < b ? -1 : a > b ? 1 : 0;
-                };
-                callback(null, _map(results.sort(fn), function (x) {
-                    return x.value;
-                }));
-            }
-        });
-    };
-
-    async.auto = function (tasks, callback) {
-        callback = callback || function () {};
-        var keys = _keys(tasks);
-        if (!keys.length) {
-            return callback(null);
-        }
-
-        var completed = [];
-
-        var listeners = [];
-        var addListener = function (fn) {
-            listeners.unshift(fn);
-        };
-        var removeListener = function (fn) {
-            for (var i = 0; i < listeners.length; i += 1) {
-                if (listeners[i] === fn) {
-                    listeners.splice(i, 1);
-                    return;
-                }
-            }
-        };
-        var taskComplete = function () {
-            _forEach(listeners, function (fn) {
-                fn();
-            });
-        };
-
-        addListener(function () {
-            if (completed.length === keys.length) {
-                callback(null);
-            }
-        });
-
-        _forEach(keys, function (k) {
-            var task = (tasks[k] instanceof Function) ? [tasks[k]]: tasks[k];
-            var taskCallback = function (err) {
-                if (err) {
-                    callback(err);
-                    // stop subsequent errors hitting callback multiple times
-                    callback = function () {};
-                }
-                else {
-                    completed.push(k);
-                    taskComplete();
-                }
-            };
-            var requires = task.slice(0, Math.abs(task.length - 1)) || [];
-            var ready = function () {
-                return _reduce(requires, function (a, x) {
-                    return (a && _indexOf(completed, x) !== -1);
-                }, true);
-            };
-            if (ready()) {
-                task[task.length - 1](taskCallback);
-            }
-            else {
-                var listener = function () {
-                    if (ready()) {
-                        removeListener(listener);
-                        task[task.length - 1](taskCallback);
-                    }
-                };
-                addListener(listener);
-            }
-        });
-    };
-
-    async.waterfall = function (tasks, callback) {
-        if (!tasks.length) {
-            return callback();
-        }
-        callback = callback || function () {};
-        var wrapIterator = function (iterator) {
-            return function (err) {
-                if (err) {
-                    callback(err);
-                    callback = function () {};
-                }
-                else {
-                    var args = Array.prototype.slice.call(arguments, 1);
-                    var next = iterator.next();
-                    if (next) {
-                        args.push(wrapIterator(next));
-                    }
-                    else {
-                        args.push(callback);
-                    }
-                    async.nextTick(function () {
-                        iterator.apply(null, args);
-                    });
-                }
-            };
-        };
-        wrapIterator(async.iterator(tasks))();
-    };
-
-    async.parallel = function (tasks, callback) {
-        callback = callback || function () {};
-        if (tasks.constructor === Array) {
-            async.map(tasks, function (fn, callback) {
-                if (fn) {
-                    fn(function (err) {
-                        var args = Array.prototype.slice.call(arguments, 1);
-                        if (args.length <= 1) {
-                            args = args[0];
-                        }
-                        callback.call(null, err, args || null);
-                    });
-                }
-            }, callback);
-        }
-        else {
-            var results = {};
-            async.forEach(_keys(tasks), function (k, callback) {
-                tasks[k](function (err) {
-                    var args = Array.prototype.slice.call(arguments, 1);
-                    if (args.length <= 1) {
-                        args = args[0];
-                    }
-                    results[k] = args;
-                    callback(err);
-                });
-            }, function (err) {
-                callback(err, results);
-            });
-        }
-    };
-
-    async.series = function (tasks, callback) {
-        callback = callback || function () {};
-        if (tasks.constructor === Array) {
-            async.mapSeries(tasks, function (fn, callback) {
-                if (fn) {
-                    fn(function (err) {
-                        var args = Array.prototype.slice.call(arguments, 1);
-                        if (args.length <= 1) {
-                            args = args[0];
-                        }
-                        callback.call(null, err, args || null);
-                    });
-                }
-            }, callback);
-        }
-        else {
-            var results = {};
-            async.forEachSeries(_keys(tasks), function (k, callback) {
-                tasks[k](function (err) {
-                    var args = Array.prototype.slice.call(arguments, 1);
-                    if (args.length <= 1) {
-                        args = args[0];
-                    }
-                    results[k] = args;
-                    callback(err);
-                });
-            }, function (err) {
-                callback(err, results);
-            });
-        }
-    };
-
-    async.iterator = function (tasks) {
-        var makeCallback = function (index) {
-            var fn = function () {
-                if (tasks.length) {
-                    tasks[index].apply(null, arguments);
-                }
-                return fn.next();
-            };
-            fn.next = function () {
-                return (index < tasks.length - 1) ? makeCallback(index + 1): null;
-            };
-            return fn;
-        };
-        return makeCallback(0);
-    };
-
-    async.apply = function (fn) {
-        var args = Array.prototype.slice.call(arguments, 1);
-        return function () {
-            return fn.apply(
-                null, args.concat(Array.prototype.slice.call(arguments))
-            );
-        };
-    };
-
-    var _concat = function (eachfn, arr, fn, callback) {
-        var r = [];
-        eachfn(arr, function (x, cb) {
-            fn(x, function (err, y) {
-                r = r.concat(y || []);
-                cb(err);
-            });
-        }, function (err) {
-            callback(err, r);
-        });
-    };
-    async.concat = doParallel(_concat);
-    async.concatSeries = doSeries(_concat);
-
-    async.whilst = function (test, iterator, callback) {
-        if (test()) {
-            iterator(function (err) {
-                if (err) {
-                    return callback(err);
-                }
-                async.whilst(test, iterator, callback);
-            });
-        }
-        else {
-            callback();
-        }
-    };
-
-    async.until = function (test, iterator, callback) {
-        if (!test()) {
-            iterator(function (err) {
-                if (err) {
-                    return callback(err);
-                }
-                async.until(test, iterator, callback);
-            });
-        }
-        else {
-            callback();
-        }
-    };
-
-    async.queue = function (worker, concurrency) {
-        var workers = 0;
-        var tasks = [];
-        var q = {
-            concurrency: concurrency,
-            push: function (data, callback) {
-                tasks.push({data: data, callback: callback});
-                async.nextTick(q.process);
-            },
-            process: function () {
-                if (workers < q.concurrency && tasks.length) {
-                    var task = tasks.splice(0, 1)[0];
-                    workers += 1;
-                    worker(task.data, function () {
-                        workers -= 1;
-                        if (task.callback) {
-                            task.callback.apply(task, arguments);
-                        }
-                        q.process();
-                    });
-                }
-            },
-            length: function () {
-                return tasks.length;
-            }
-        };
-        return q;
-    };
-
-    var _console_fn = function (name) {
-        return function (fn) {
-            var args = Array.prototype.slice.call(arguments, 1);
-            fn.apply(null, args.concat([function (err) {
-                var args = Array.prototype.slice.call(arguments, 1);
-                if (typeof console !== 'undefined') {
-                    if (err) {
-                        if (console.error) {
-                            console.error(err);
-                        }
-                    }
-                    else if (console[name]) {
-                        _forEach(args, function (x) {
-                            console[name](x);
-                        });
-                    }
-                }
-            }]));
-        };
-    };
-    async.log = _console_fn('log');
-    async.dir = _console_fn('dir');
-    /*async.info = _console_fn('info');
-    async.warn = _console_fn('warn');
-    async.error = _console_fn('error');*/
-
-    async.memoize = function (fn, hasher) {
-        var memo = {};
-        hasher = hasher || function (x) {
-            return x;
-        };
-        return function () {
-            var args = Array.prototype.slice.call(arguments);
-            var callback = args.pop();
-            var key = hasher.apply(null, args);
-            if (key in memo) {
-                callback.apply(null, memo[key]);
-            }
-            else {
-                fn.apply(null, args.concat([function () {
-                    memo[key] = arguments;
-                    callback.apply(null, arguments);
-                }]));
-            }
-        };
-    };
-
-}());

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/deps/console.log.js
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/deps/console.log.js b/node_modules/nodeunit/deps/console.log.js
deleted file mode 100644
index fe146c1..0000000
--- a/node_modules/nodeunit/deps/console.log.js
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
-  A console.log that won't leave you hanging when node exits
-  90% of this file was ripped from node.js
-
-  License: see: https://github.com/joyent/node/blob/master/lib/console.js
- */
-
- // console object
-var formatRegExp = /%[sdj]/g;
-function format(f) {
-  var util = require('util');
-
-  if (typeof f !== 'string') {
-    var objects = [];
-    for (var i = 0; i < arguments.length; i++) {
-      objects.push(util.inspect(arguments[i]));
-    }
-    return objects.join(' ');
-  }
-
-
-  var i = 1;
-  var args = arguments;
-  var str = String(f).replace(formatRegExp, function(x) {
-    switch (x) {
-      case '%s': return String(args[i++]);
-      case '%d': return Number(args[i++]);
-      case '%j': return JSON.stringify(args[i++]);
-      default:
-        return x;
-    }
-  });
-  for (var len = args.length, x = args[i]; i < len; x = args[++i]) {
-    if (x === null || typeof x !== 'object') {
-      str += ' ' + x;
-    } else {
-      str += ' ' + util.inspect(x);
-    }
-  }
-  return str;
-}
-
-console.log = function() {
-  var res = process.stdout.write(format.apply(this, arguments) + '\n');
-
-  // this is the first time stdout got backed up
-  if (!res && !process.stdout.pendingWrite) {
-     process.stdout.pendingWrite = true;
-
-     // magic sauce: keep node alive until stdout has flushed
-     process.stdout.once('drain', function () {
-       process.stdout.draining = false;
-     });
-  }
-};

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/deps/ejs/History.md
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/deps/ejs/History.md b/node_modules/nodeunit/deps/ejs/History.md
deleted file mode 100644
index 00d2b5b..0000000
--- a/node_modules/nodeunit/deps/ejs/History.md
+++ /dev/null
@@ -1,70 +0,0 @@
-
-0.4.3 / 2011-06-20 
-==================
-
-  * Fixed stacktraces line number when used multiline js expressions [Octave]
-
-0.4.2 / 2011-05-11 
-==================
-
-  * Added client side support
-
-0.4.1 / 2011-04-21 
-==================
-
-  * Fixed error context
-
-0.4.0 / 2011-04-21 
-==================
-
-  * Added; ported jade's error reporting to ejs. [slaskis]
-
-0.3.1 / 2011-02-23 
-==================
-
-  * Fixed optional `compile()` options
-
-0.3.0 / 2011-02-14 
-==================
-
-  * Added 'json' filter [Yuriy Bogdanov]
-  * Use exported version of parse function to allow monkey-patching [Anatoliy Chakkaev]
-
-0.2.1 / 2010-10-07 
-==================
-
-  * Added filter support
-  * Fixed _cache_ option. ~4x performance increase
-
-0.2.0 / 2010-08-05 
-==================
-
-  * Added support for global tag config
-  * Added custom tag support. Closes #5
-  * Fixed whitespace bug. Closes #4
-
-0.1.0 / 2010-08-04
-==================
-
-  * Faster implementation [ashleydev]
-
-0.0.4 / 2010-08-02
-==================
-
-  * Fixed single quotes for content outside of template tags. [aniero]
-  * Changed; `exports.compile()` now expects only "locals"
-
-0.0.3 / 2010-07-15
-==================
-
-  * Fixed single quotes
-
-0.0.2 / 2010-07-09
-==================
-
-  * Fixed newline preservation
-
-0.0.1 / 2010-07-09
-==================
-
-  * Initial release

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/deps/ejs/Makefile
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/deps/ejs/Makefile b/node_modules/nodeunit/deps/ejs/Makefile
deleted file mode 100644
index a8b00d9..0000000
--- a/node_modules/nodeunit/deps/ejs/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-
-SRC = $(shell find lib -name "*.js" -type f)
-UGLIFY_FLAGS = --no-mangle 
-
-test:
-	@./node_modules/.bin/expresso test/*.test.js
-
-ejs.js: $(SRC)
-	@node support/compile.js $^
-
-ejs.min.js: ejs.js
-	@uglifyjs $(UGLIFY_FLAGS) $< > $@ \
-		&& du ejs.min.js \
-		&& du ejs.js
-
-clean:
-	rm -f ejs.js
-	rm -f ejs.min.js
-
-.PHONY: test
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/deps/ejs/Readme.md
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/deps/ejs/Readme.md b/node_modules/nodeunit/deps/ejs/Readme.md
deleted file mode 100644
index 58cb10a..0000000
--- a/node_modules/nodeunit/deps/ejs/Readme.md
+++ /dev/null
@@ -1,152 +0,0 @@
-
-# EJS
-
-Embedded JavaScript templates.
-
-## Installation
-
-    $ npm install ejs
-
-## Features
-
-  * Complies with the [Express](http://expressjs.com) view system
-  * Static caching of intermediate JavaScript
-  * Unbuffered code for conditionals etc `<% code %>`
-  * Escapes html by default with `<%= code %>`
-  * Unescaped buffering with `<%- code %>`
-  * Supports tag customization
-  * Filter support for designer-friendly templates
-  * Client-side support
-
-## Example
-
-    <% if (user) { %>
-	    <h2><%= user.name %></h2>
-    <% } %>
-
-## Usage
-
-    ejs.compile(str, options);
-    // => Function
-
-    ejs.render(str, options);
-    // => str
-
-## Options
-
-  - `locals`          Local variables object
-  - `cache`           Compiled functions are cached, requires `filename`
-  - `filename`        Used by `cache` to key caches
-  - `scope`           Function execution context
-  - `debug`           Output generated function body
-  - `open`            Open tag, defaulting to "<%"
-  - `close`           Closing tag, defaulting to "%>"
-
-## Custom tags
-
-Custom tags can also be applied globally:
-
-    var ejs = require('ejs');
-    ejs.open = '{{';
-    ejs.close = '}}';
-
-Which would make the following a valid template:
-
-    <h1>{{= title }}</h1>
-
-## Filters
-
-EJS conditionally supports the concept of "filters". A "filter chain"
-is a designer friendly api for manipulating data, without writing JavaScript.
-
-Filters can be applied by supplying the _:_ modifier, so for example if we wish to take the array `[{ name: 'tj' }, { name: 'mape' },  { name: 'guillermo' }]` and output a list of names we can do this simply with filters:
-
-Template:
-
-    <p><%=: users | map:'name' | join %></p>
-
-Output:
-
-    <p>Tj, Mape, Guillermo</p>
-
-Render call:
-
-    ejs.render(str, {
-        locals: {
-            users: [
-                { name: 'tj' },
-                { name: 'mape' },
-                { name: 'guillermo' }
-            ]
-        }
-    });
-
-Or perhaps capitalize the first user's name for display:
-
-    <p><%=: users | first | capitalize %></p>
-
-## Filter list
-
-Currently these filters are available:
-
-  - first
-  - last
-  - capitalize
-  - downcase
-  - upcase
-  - sort
-  - sort_by:'prop'
-  - size
-  - length
-  - plus:n
-  - minus:n
-  - times:n
-  - divided_by:n
-  - join:'val'
-  - truncate:n
-  - truncate_words:n
-  - replace:pattern,substitution
-  - prepend:val
-  - append:val
-  - map:'prop'
-  - reverse
-  - get:'prop'
-
-## Adding filters
-
- To add a filter simply add a method to the `.filters` object:
- 
-```js
-ejs.filters.last = function(obj) {
-  return obj[obj.length - 1];
-};
-```
-
-## client-side support
-
-  include `./ejs.js` or `./ejs.min.js` and `require("ejs").compile(str)`.
-
-## License 
-
-(The MIT License)
-
-Copyright (c) 2009-2010 TJ Holowaychuk &lt;tj@vision-media.ca&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

http://git-wip-us.apache.org/repos/asf/incubator-cordova-coho/blob/1d113e44/node_modules/nodeunit/deps/ejs/benchmark.js
----------------------------------------------------------------------
diff --git a/node_modules/nodeunit/deps/ejs/benchmark.js b/node_modules/nodeunit/deps/ejs/benchmark.js
deleted file mode 100644
index 7b267e1..0000000
--- a/node_modules/nodeunit/deps/ejs/benchmark.js
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-var ejs = require('./lib/ejs'),
-    str = '<% if (foo) { %><p><%= foo %></p><% } %>',
-    times = 50000;
-
-console.log('rendering ' + times + ' times');
-
-var start = new Date;
-while (times--) {
-    ejs.render(str, { cache: true, filename: 'test', locals: { foo: 'bar' }});
-}
-
-console.log('took ' + (new Date - start) + 'ms');
\ No newline at end of file


Mime
View raw message