node_task 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/lib/node_task/index.js +28 -21
  3. data/lib/node_task/node_modules/ndjson/cli.js +23 -0
  4. data/lib/node_task/node_modules/ndjson/collaborators.md +7 -0
  5. data/lib/node_task/node_modules/ndjson/index.js +30 -0
  6. data/lib/node_task/node_modules/ndjson/node_modules/minimist/example/parse.js +2 -0
  7. data/lib/node_task/node_modules/ndjson/node_modules/minimist/index.js +236 -0
  8. data/lib/node_task/node_modules/ndjson/node_modules/minimist/package.json +71 -0
  9. data/lib/node_task/node_modules/ndjson/node_modules/minimist/readme.markdown +91 -0
  10. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/all_bool.js +32 -0
  11. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/bool.js +166 -0
  12. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/dash.js +31 -0
  13. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/default_bool.js +35 -0
  14. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/dotted.js +22 -0
  15. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/kv_short.js +16 -0
  16. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/long.js +31 -0
  17. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/num.js +36 -0
  18. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/parse.js +197 -0
  19. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/parse_modified.js +9 -0
  20. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/short.js +67 -0
  21. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/stop_early.js +15 -0
  22. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/unknown.js +102 -0
  23. data/lib/node_task/node_modules/ndjson/node_modules/minimist/test/whitespace.js +8 -0
  24. data/lib/node_task/node_modules/ndjson/node_modules/split2/README.md +74 -0
  25. data/lib/node_task/node_modules/ndjson/node_modules/split2/index.js +83 -0
  26. data/lib/node_task/node_modules/ndjson/node_modules/split2/package.json +55 -0
  27. data/lib/node_task/node_modules/ndjson/node_modules/split2/test.js +149 -0
  28. data/lib/node_task/node_modules/ndjson/node_modules/through2/README.md +132 -0
  29. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/README.md +15 -0
  30. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/duplex.js +1 -0
  31. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/lib/_stream_duplex.js +89 -0
  32. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/lib/_stream_passthrough.js +46 -0
  33. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js +982 -0
  34. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/lib/_stream_transform.js +210 -0
  35. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js +386 -0
  36. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/core-util-is/README.md +3 -0
  37. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/core-util-is/float.patch +604 -0
  38. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/core-util-is/lib/util.js +107 -0
  39. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/core-util-is/package.json +53 -0
  40. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/core-util-is/util.js +106 -0
  41. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/inherits/README.md +42 -0
  42. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/inherits/inherits.js +1 -0
  43. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/inherits/inherits_browser.js +23 -0
  44. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/inherits/package.json +50 -0
  45. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/inherits/test.js +25 -0
  46. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/isarray/README.md +54 -0
  47. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/isarray/build/build.js +209 -0
  48. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/isarray/component.json +19 -0
  49. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/isarray/index.js +3 -0
  50. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/isarray/package.json +53 -0
  51. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/string_decoder/README.md +7 -0
  52. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/string_decoder/index.js +221 -0
  53. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/node_modules/string_decoder/package.json +54 -0
  54. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/package.json +70 -0
  55. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/passthrough.js +1 -0
  56. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/readable.js +8 -0
  57. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/transform.js +1 -0
  58. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/readable-stream/writable.js +1 -0
  59. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/xtend/README.md +32 -0
  60. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/xtend/immutable.js +17 -0
  61. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/xtend/mutable.js +15 -0
  62. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/xtend/package.json +88 -0
  63. data/lib/node_task/node_modules/ndjson/node_modules/through2/node_modules/xtend/test.js +63 -0
  64. data/lib/node_task/node_modules/ndjson/node_modules/through2/package.json +65 -0
  65. data/lib/node_task/node_modules/ndjson/node_modules/through2/through2.js +96 -0
  66. data/lib/node_task/node_modules/ndjson/package.json +64 -0
  67. data/lib/node_task/node_modules/ndjson/readme.md +55 -0
  68. data/lib/node_task/node_modules/ndjson/test.js +73 -0
  69. data/lib/node_task/node_task.rb +6 -13
  70. data/lib/node_task/package.json +2 -3
  71. metadata +69 -3
@@ -0,0 +1,604 @@
1
+ diff --git a/lib/util.js b/lib/util.js
2
+ index a03e874..9074e8e 100644
3
+ --- a/lib/util.js
4
+ +++ b/lib/util.js
5
+ @@ -19,430 +19,6 @@
6
+ // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
7
+ // USE OR OTHER DEALINGS IN THE SOFTWARE.
8
+
9
+ -var formatRegExp = /%[sdj%]/g;
10
+ -exports.format = function(f) {
11
+ - if (!isString(f)) {
12
+ - var objects = [];
13
+ - for (var i = 0; i < arguments.length; i++) {
14
+ - objects.push(inspect(arguments[i]));
15
+ - }
16
+ - return objects.join(' ');
17
+ - }
18
+ -
19
+ - var i = 1;
20
+ - var args = arguments;
21
+ - var len = args.length;
22
+ - var str = String(f).replace(formatRegExp, function(x) {
23
+ - if (x === '%%') return '%';
24
+ - if (i >= len) return x;
25
+ - switch (x) {
26
+ - case '%s': return String(args[i++]);
27
+ - case '%d': return Number(args[i++]);
28
+ - case '%j':
29
+ - try {
30
+ - return JSON.stringify(args[i++]);
31
+ - } catch (_) {
32
+ - return '[Circular]';
33
+ - }
34
+ - default:
35
+ - return x;
36
+ - }
37
+ - });
38
+ - for (var x = args[i]; i < len; x = args[++i]) {
39
+ - if (isNull(x) || !isObject(x)) {
40
+ - str += ' ' + x;
41
+ - } else {
42
+ - str += ' ' + inspect(x);
43
+ - }
44
+ - }
45
+ - return str;
46
+ -};
47
+ -
48
+ -
49
+ -// Mark that a method should not be used.
50
+ -// Returns a modified function which warns once by default.
51
+ -// If --no-deprecation is set, then it is a no-op.
52
+ -exports.deprecate = function(fn, msg) {
53
+ - // Allow for deprecating things in the process of starting up.
54
+ - if (isUndefined(global.process)) {
55
+ - return function() {
56
+ - return exports.deprecate(fn, msg).apply(this, arguments);
57
+ - };
58
+ - }
59
+ -
60
+ - if (process.noDeprecation === true) {
61
+ - return fn;
62
+ - }
63
+ -
64
+ - var warned = false;
65
+ - function deprecated() {
66
+ - if (!warned) {
67
+ - if (process.throwDeprecation) {
68
+ - throw new Error(msg);
69
+ - } else if (process.traceDeprecation) {
70
+ - console.trace(msg);
71
+ - } else {
72
+ - console.error(msg);
73
+ - }
74
+ - warned = true;
75
+ - }
76
+ - return fn.apply(this, arguments);
77
+ - }
78
+ -
79
+ - return deprecated;
80
+ -};
81
+ -
82
+ -
83
+ -var debugs = {};
84
+ -var debugEnviron;
85
+ -exports.debuglog = function(set) {
86
+ - if (isUndefined(debugEnviron))
87
+ - debugEnviron = process.env.NODE_DEBUG || '';
88
+ - set = set.toUpperCase();
89
+ - if (!debugs[set]) {
90
+ - if (new RegExp('\\b' + set + '\\b', 'i').test(debugEnviron)) {
91
+ - var pid = process.pid;
92
+ - debugs[set] = function() {
93
+ - var msg = exports.format.apply(exports, arguments);
94
+ - console.error('%s %d: %s', set, pid, msg);
95
+ - };
96
+ - } else {
97
+ - debugs[set] = function() {};
98
+ - }
99
+ - }
100
+ - return debugs[set];
101
+ -};
102
+ -
103
+ -
104
+ -/**
105
+ - * Echos the value of a value. Trys to print the value out
106
+ - * in the best way possible given the different types.
107
+ - *
108
+ - * @param {Object} obj The object to print out.
109
+ - * @param {Object} opts Optional options object that alters the output.
110
+ - */
111
+ -/* legacy: obj, showHidden, depth, colors*/
112
+ -function inspect(obj, opts) {
113
+ - // default options
114
+ - var ctx = {
115
+ - seen: [],
116
+ - stylize: stylizeNoColor
117
+ - };
118
+ - // legacy...
119
+ - if (arguments.length >= 3) ctx.depth = arguments[2];
120
+ - if (arguments.length >= 4) ctx.colors = arguments[3];
121
+ - if (isBoolean(opts)) {
122
+ - // legacy...
123
+ - ctx.showHidden = opts;
124
+ - } else if (opts) {
125
+ - // got an "options" object
126
+ - exports._extend(ctx, opts);
127
+ - }
128
+ - // set default options
129
+ - if (isUndefined(ctx.showHidden)) ctx.showHidden = false;
130
+ - if (isUndefined(ctx.depth)) ctx.depth = 2;
131
+ - if (isUndefined(ctx.colors)) ctx.colors = false;
132
+ - if (isUndefined(ctx.customInspect)) ctx.customInspect = true;
133
+ - if (ctx.colors) ctx.stylize = stylizeWithColor;
134
+ - return formatValue(ctx, obj, ctx.depth);
135
+ -}
136
+ -exports.inspect = inspect;
137
+ -
138
+ -
139
+ -// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics
140
+ -inspect.colors = {
141
+ - 'bold' : [1, 22],
142
+ - 'italic' : [3, 23],
143
+ - 'underline' : [4, 24],
144
+ - 'inverse' : [7, 27],
145
+ - 'white' : [37, 39],
146
+ - 'grey' : [90, 39],
147
+ - 'black' : [30, 39],
148
+ - 'blue' : [34, 39],
149
+ - 'cyan' : [36, 39],
150
+ - 'green' : [32, 39],
151
+ - 'magenta' : [35, 39],
152
+ - 'red' : [31, 39],
153
+ - 'yellow' : [33, 39]
154
+ -};
155
+ -
156
+ -// Don't use 'blue' not visible on cmd.exe
157
+ -inspect.styles = {
158
+ - 'special': 'cyan',
159
+ - 'number': 'yellow',
160
+ - 'boolean': 'yellow',
161
+ - 'undefined': 'grey',
162
+ - 'null': 'bold',
163
+ - 'string': 'green',
164
+ - 'date': 'magenta',
165
+ - // "name": intentionally not styling
166
+ - 'regexp': 'red'
167
+ -};
168
+ -
169
+ -
170
+ -function stylizeWithColor(str, styleType) {
171
+ - var style = inspect.styles[styleType];
172
+ -
173
+ - if (style) {
174
+ - return '\u001b[' + inspect.colors[style][0] + 'm' + str +
175
+ - '\u001b[' + inspect.colors[style][1] + 'm';
176
+ - } else {
177
+ - return str;
178
+ - }
179
+ -}
180
+ -
181
+ -
182
+ -function stylizeNoColor(str, styleType) {
183
+ - return str;
184
+ -}
185
+ -
186
+ -
187
+ -function arrayToHash(array) {
188
+ - var hash = {};
189
+ -
190
+ - array.forEach(function(val, idx) {
191
+ - hash[val] = true;
192
+ - });
193
+ -
194
+ - return hash;
195
+ -}
196
+ -
197
+ -
198
+ -function formatValue(ctx, value, recurseTimes) {
199
+ - // Provide a hook for user-specified inspect functions.
200
+ - // Check that value is an object with an inspect function on it
201
+ - if (ctx.customInspect &&
202
+ - value &&
203
+ - isFunction(value.inspect) &&
204
+ - // Filter out the util module, it's inspect function is special
205
+ - value.inspect !== exports.inspect &&
206
+ - // Also filter out any prototype objects using the circular check.
207
+ - !(value.constructor && value.constructor.prototype === value)) {
208
+ - var ret = value.inspect(recurseTimes, ctx);
209
+ - if (!isString(ret)) {
210
+ - ret = formatValue(ctx, ret, recurseTimes);
211
+ - }
212
+ - return ret;
213
+ - }
214
+ -
215
+ - // Primitive types cannot have properties
216
+ - var primitive = formatPrimitive(ctx, value);
217
+ - if (primitive) {
218
+ - return primitive;
219
+ - }
220
+ -
221
+ - // Look up the keys of the object.
222
+ - var keys = Object.keys(value);
223
+ - var visibleKeys = arrayToHash(keys);
224
+ -
225
+ - if (ctx.showHidden) {
226
+ - keys = Object.getOwnPropertyNames(value);
227
+ - }
228
+ -
229
+ - // Some type of object without properties can be shortcutted.
230
+ - if (keys.length === 0) {
231
+ - if (isFunction(value)) {
232
+ - var name = value.name ? ': ' + value.name : '';
233
+ - return ctx.stylize('[Function' + name + ']', 'special');
234
+ - }
235
+ - if (isRegExp(value)) {
236
+ - return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');
237
+ - }
238
+ - if (isDate(value)) {
239
+ - return ctx.stylize(Date.prototype.toString.call(value), 'date');
240
+ - }
241
+ - if (isError(value)) {
242
+ - return formatError(value);
243
+ - }
244
+ - }
245
+ -
246
+ - var base = '', array = false, braces = ['{', '}'];
247
+ -
248
+ - // Make Array say that they are Array
249
+ - if (isArray(value)) {
250
+ - array = true;
251
+ - braces = ['[', ']'];
252
+ - }
253
+ -
254
+ - // Make functions say that they are functions
255
+ - if (isFunction(value)) {
256
+ - var n = value.name ? ': ' + value.name : '';
257
+ - base = ' [Function' + n + ']';
258
+ - }
259
+ -
260
+ - // Make RegExps say that they are RegExps
261
+ - if (isRegExp(value)) {
262
+ - base = ' ' + RegExp.prototype.toString.call(value);
263
+ - }
264
+ -
265
+ - // Make dates with properties first say the date
266
+ - if (isDate(value)) {
267
+ - base = ' ' + Date.prototype.toUTCString.call(value);
268
+ - }
269
+ -
270
+ - // Make error with message first say the error
271
+ - if (isError(value)) {
272
+ - base = ' ' + formatError(value);
273
+ - }
274
+ -
275
+ - if (keys.length === 0 && (!array || value.length == 0)) {
276
+ - return braces[0] + base + braces[1];
277
+ - }
278
+ -
279
+ - if (recurseTimes < 0) {
280
+ - if (isRegExp(value)) {
281
+ - return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');
282
+ - } else {
283
+ - return ctx.stylize('[Object]', 'special');
284
+ - }
285
+ - }
286
+ -
287
+ - ctx.seen.push(value);
288
+ -
289
+ - var output;
290
+ - if (array) {
291
+ - output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);
292
+ - } else {
293
+ - output = keys.map(function(key) {
294
+ - return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);
295
+ - });
296
+ - }
297
+ -
298
+ - ctx.seen.pop();
299
+ -
300
+ - return reduceToSingleString(output, base, braces);
301
+ -}
302
+ -
303
+ -
304
+ -function formatPrimitive(ctx, value) {
305
+ - if (isUndefined(value))
306
+ - return ctx.stylize('undefined', 'undefined');
307
+ - if (isString(value)) {
308
+ - var simple = '\'' + JSON.stringify(value).replace(/^"|"$/g, '')
309
+ - .replace(/'/g, "\\'")
310
+ - .replace(/\\"/g, '"') + '\'';
311
+ - return ctx.stylize(simple, 'string');
312
+ - }
313
+ - if (isNumber(value)) {
314
+ - // Format -0 as '-0'. Strict equality won't distinguish 0 from -0,
315
+ - // so instead we use the fact that 1 / -0 < 0 whereas 1 / 0 > 0 .
316
+ - if (value === 0 && 1 / value < 0)
317
+ - return ctx.stylize('-0', 'number');
318
+ - return ctx.stylize('' + value, 'number');
319
+ - }
320
+ - if (isBoolean(value))
321
+ - return ctx.stylize('' + value, 'boolean');
322
+ - // For some reason typeof null is "object", so special case here.
323
+ - if (isNull(value))
324
+ - return ctx.stylize('null', 'null');
325
+ -}
326
+ -
327
+ -
328
+ -function formatError(value) {
329
+ - return '[' + Error.prototype.toString.call(value) + ']';
330
+ -}
331
+ -
332
+ -
333
+ -function formatArray(ctx, value, recurseTimes, visibleKeys, keys) {
334
+ - var output = [];
335
+ - for (var i = 0, l = value.length; i < l; ++i) {
336
+ - if (hasOwnProperty(value, String(i))) {
337
+ - output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,
338
+ - String(i), true));
339
+ - } else {
340
+ - output.push('');
341
+ - }
342
+ - }
343
+ - keys.forEach(function(key) {
344
+ - if (!key.match(/^\d+$/)) {
345
+ - output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,
346
+ - key, true));
347
+ - }
348
+ - });
349
+ - return output;
350
+ -}
351
+ -
352
+ -
353
+ -function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {
354
+ - var name, str, desc;
355
+ - desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };
356
+ - if (desc.get) {
357
+ - if (desc.set) {
358
+ - str = ctx.stylize('[Getter/Setter]', 'special');
359
+ - } else {
360
+ - str = ctx.stylize('[Getter]', 'special');
361
+ - }
362
+ - } else {
363
+ - if (desc.set) {
364
+ - str = ctx.stylize('[Setter]', 'special');
365
+ - }
366
+ - }
367
+ - if (!hasOwnProperty(visibleKeys, key)) {
368
+ - name = '[' + key + ']';
369
+ - }
370
+ - if (!str) {
371
+ - if (ctx.seen.indexOf(desc.value) < 0) {
372
+ - if (isNull(recurseTimes)) {
373
+ - str = formatValue(ctx, desc.value, null);
374
+ - } else {
375
+ - str = formatValue(ctx, desc.value, recurseTimes - 1);
376
+ - }
377
+ - if (str.indexOf('\n') > -1) {
378
+ - if (array) {
379
+ - str = str.split('\n').map(function(line) {
380
+ - return ' ' + line;
381
+ - }).join('\n').substr(2);
382
+ - } else {
383
+ - str = '\n' + str.split('\n').map(function(line) {
384
+ - return ' ' + line;
385
+ - }).join('\n');
386
+ - }
387
+ - }
388
+ - } else {
389
+ - str = ctx.stylize('[Circular]', 'special');
390
+ - }
391
+ - }
392
+ - if (isUndefined(name)) {
393
+ - if (array && key.match(/^\d+$/)) {
394
+ - return str;
395
+ - }
396
+ - name = JSON.stringify('' + key);
397
+ - if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) {
398
+ - name = name.substr(1, name.length - 2);
399
+ - name = ctx.stylize(name, 'name');
400
+ - } else {
401
+ - name = name.replace(/'/g, "\\'")
402
+ - .replace(/\\"/g, '"')
403
+ - .replace(/(^"|"$)/g, "'");
404
+ - name = ctx.stylize(name, 'string');
405
+ - }
406
+ - }
407
+ -
408
+ - return name + ': ' + str;
409
+ -}
410
+ -
411
+ -
412
+ -function reduceToSingleString(output, base, braces) {
413
+ - var numLinesEst = 0;
414
+ - var length = output.reduce(function(prev, cur) {
415
+ - numLinesEst++;
416
+ - if (cur.indexOf('\n') >= 0) numLinesEst++;
417
+ - return prev + cur.replace(/\u001b\[\d\d?m/g, '').length + 1;
418
+ - }, 0);
419
+ -
420
+ - if (length > 60) {
421
+ - return braces[0] +
422
+ - (base === '' ? '' : base + '\n ') +
423
+ - ' ' +
424
+ - output.join(',\n ') +
425
+ - ' ' +
426
+ - braces[1];
427
+ - }
428
+ -
429
+ - return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];
430
+ -}
431
+ -
432
+ -
433
+ // NOTE: These type checking functions intentionally don't use `instanceof`
434
+ // because it is fragile and can be easily faked with `Object.create()`.
435
+ function isArray(ar) {
436
+ @@ -522,166 +98,10 @@ function isPrimitive(arg) {
437
+ exports.isPrimitive = isPrimitive;
438
+
439
+ function isBuffer(arg) {
440
+ - return arg instanceof Buffer;
441
+ + return Buffer.isBuffer(arg);
442
+ }
443
+ exports.isBuffer = isBuffer;
444
+
445
+ function objectToString(o) {
446
+ return Object.prototype.toString.call(o);
447
+ -}
448
+ -
449
+ -
450
+ -function pad(n) {
451
+ - return n < 10 ? '0' + n.toString(10) : n.toString(10);
452
+ -}
453
+ -
454
+ -
455
+ -var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',
456
+ - 'Oct', 'Nov', 'Dec'];
457
+ -
458
+ -// 26 Feb 16:19:34
459
+ -function timestamp() {
460
+ - var d = new Date();
461
+ - var time = [pad(d.getHours()),
462
+ - pad(d.getMinutes()),
463
+ - pad(d.getSeconds())].join(':');
464
+ - return [d.getDate(), months[d.getMonth()], time].join(' ');
465
+ -}
466
+ -
467
+ -
468
+ -// log is just a thin wrapper to console.log that prepends a timestamp
469
+ -exports.log = function() {
470
+ - console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));
471
+ -};
472
+ -
473
+ -
474
+ -/**
475
+ - * Inherit the prototype methods from one constructor into another.
476
+ - *
477
+ - * The Function.prototype.inherits from lang.js rewritten as a standalone
478
+ - * function (not on Function.prototype). NOTE: If this file is to be loaded
479
+ - * during bootstrapping this function needs to be rewritten using some native
480
+ - * functions as prototype setup using normal JavaScript does not work as
481
+ - * expected during bootstrapping (see mirror.js in r114903).
482
+ - *
483
+ - * @param {function} ctor Constructor function which needs to inherit the
484
+ - * prototype.
485
+ - * @param {function} superCtor Constructor function to inherit prototype from.
486
+ - */
487
+ -exports.inherits = function(ctor, superCtor) {
488
+ - ctor.super_ = superCtor;
489
+ - ctor.prototype = Object.create(superCtor.prototype, {
490
+ - constructor: {
491
+ - value: ctor,
492
+ - enumerable: false,
493
+ - writable: true,
494
+ - configurable: true
495
+ - }
496
+ - });
497
+ -};
498
+ -
499
+ -exports._extend = function(origin, add) {
500
+ - // Don't do anything if add isn't an object
501
+ - if (!add || !isObject(add)) return origin;
502
+ -
503
+ - var keys = Object.keys(add);
504
+ - var i = keys.length;
505
+ - while (i--) {
506
+ - origin[keys[i]] = add[keys[i]];
507
+ - }
508
+ - return origin;
509
+ -};
510
+ -
511
+ -function hasOwnProperty(obj, prop) {
512
+ - return Object.prototype.hasOwnProperty.call(obj, prop);
513
+ -}
514
+ -
515
+ -
516
+ -// Deprecated old stuff.
517
+ -
518
+ -exports.p = exports.deprecate(function() {
519
+ - for (var i = 0, len = arguments.length; i < len; ++i) {
520
+ - console.error(exports.inspect(arguments[i]));
521
+ - }
522
+ -}, 'util.p: Use console.error() instead');
523
+ -
524
+ -
525
+ -exports.exec = exports.deprecate(function() {
526
+ - return require('child_process').exec.apply(this, arguments);
527
+ -}, 'util.exec is now called `child_process.exec`.');
528
+ -
529
+ -
530
+ -exports.print = exports.deprecate(function() {
531
+ - for (var i = 0, len = arguments.length; i < len; ++i) {
532
+ - process.stdout.write(String(arguments[i]));
533
+ - }
534
+ -}, 'util.print: Use console.log instead');
535
+ -
536
+ -
537
+ -exports.puts = exports.deprecate(function() {
538
+ - for (var i = 0, len = arguments.length; i < len; ++i) {
539
+ - process.stdout.write(arguments[i] + '\n');
540
+ - }
541
+ -}, 'util.puts: Use console.log instead');
542
+ -
543
+ -
544
+ -exports.debug = exports.deprecate(function(x) {
545
+ - process.stderr.write('DEBUG: ' + x + '\n');
546
+ -}, 'util.debug: Use console.error instead');
547
+ -
548
+ -
549
+ -exports.error = exports.deprecate(function(x) {
550
+ - for (var i = 0, len = arguments.length; i < len; ++i) {
551
+ - process.stderr.write(arguments[i] + '\n');
552
+ - }
553
+ -}, 'util.error: Use console.error instead');
554
+ -
555
+ -
556
+ -exports.pump = exports.deprecate(function(readStream, writeStream, callback) {
557
+ - var callbackCalled = false;
558
+ -
559
+ - function call(a, b, c) {
560
+ - if (callback && !callbackCalled) {
561
+ - callback(a, b, c);
562
+ - callbackCalled = true;
563
+ - }
564
+ - }
565
+ -
566
+ - readStream.addListener('data', function(chunk) {
567
+ - if (writeStream.write(chunk) === false) readStream.pause();
568
+ - });
569
+ -
570
+ - writeStream.addListener('drain', function() {
571
+ - readStream.resume();
572
+ - });
573
+ -
574
+ - readStream.addListener('end', function() {
575
+ - writeStream.end();
576
+ - });
577
+ -
578
+ - readStream.addListener('close', function() {
579
+ - call();
580
+ - });
581
+ -
582
+ - readStream.addListener('error', function(err) {
583
+ - writeStream.end();
584
+ - call(err);
585
+ - });
586
+ -
587
+ - writeStream.addListener('error', function(err) {
588
+ - readStream.destroy();
589
+ - call(err);
590
+ - });
591
+ -}, 'util.pump(): Use readableStream.pipe() instead');
592
+ -
593
+ -
594
+ -var uv;
595
+ -exports._errnoException = function(err, syscall) {
596
+ - if (isUndefined(uv)) uv = process.binding('uv');
597
+ - var errname = uv.errname(err);
598
+ - var e = new Error(syscall + ' ' + errname);
599
+ - e.code = errname;
600
+ - e.errno = errname;
601
+ - e.syscall = syscall;
602
+ - return e;
603
+ -};
604
+ +}
@@ -0,0 +1,107 @@
1
+ // Copyright Joyent, Inc. and other Node contributors.
2
+ //
3
+ // Permission is hereby granted, free of charge, to any person obtaining a
4
+ // copy of this software and associated documentation files (the
5
+ // "Software"), to deal in the Software without restriction, including
6
+ // without limitation the rights to use, copy, modify, merge, publish,
7
+ // distribute, sublicense, and/or sell copies of the Software, and to permit
8
+ // persons to whom the Software is furnished to do so, subject to the
9
+ // following conditions:
10
+ //
11
+ // The above copyright notice and this permission notice shall be included
12
+ // in all copies or substantial portions of the Software.
13
+ //
14
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
+ // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
17
+ // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18
+ // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
19
+ // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
20
+ // USE OR OTHER DEALINGS IN THE SOFTWARE.
21
+
22
+ // NOTE: These type checking functions intentionally don't use `instanceof`
23
+ // because it is fragile and can be easily faked with `Object.create()`.
24
+ function isArray(ar) {
25
+ return Array.isArray(ar);
26
+ }
27
+ exports.isArray = isArray;
28
+
29
+ function isBoolean(arg) {
30
+ return typeof arg === 'boolean';
31
+ }
32
+ exports.isBoolean = isBoolean;
33
+
34
+ function isNull(arg) {
35
+ return arg === null;
36
+ }
37
+ exports.isNull = isNull;
38
+
39
+ function isNullOrUndefined(arg) {
40
+ return arg == null;
41
+ }
42
+ exports.isNullOrUndefined = isNullOrUndefined;
43
+
44
+ function isNumber(arg) {
45
+ return typeof arg === 'number';
46
+ }
47
+ exports.isNumber = isNumber;
48
+
49
+ function isString(arg) {
50
+ return typeof arg === 'string';
51
+ }
52
+ exports.isString = isString;
53
+
54
+ function isSymbol(arg) {
55
+ return typeof arg === 'symbol';
56
+ }
57
+ exports.isSymbol = isSymbol;
58
+
59
+ function isUndefined(arg) {
60
+ return arg === void 0;
61
+ }
62
+ exports.isUndefined = isUndefined;
63
+
64
+ function isRegExp(re) {
65
+ return isObject(re) && objectToString(re) === '[object RegExp]';
66
+ }
67
+ exports.isRegExp = isRegExp;
68
+
69
+ function isObject(arg) {
70
+ return typeof arg === 'object' && arg !== null;
71
+ }
72
+ exports.isObject = isObject;
73
+
74
+ function isDate(d) {
75
+ return isObject(d) && objectToString(d) === '[object Date]';
76
+ }
77
+ exports.isDate = isDate;
78
+
79
+ function isError(e) {
80
+ return isObject(e) &&
81
+ (objectToString(e) === '[object Error]' || e instanceof Error);
82
+ }
83
+ exports.isError = isError;
84
+
85
+ function isFunction(arg) {
86
+ return typeof arg === 'function';
87
+ }
88
+ exports.isFunction = isFunction;
89
+
90
+ function isPrimitive(arg) {
91
+ return arg === null ||
92
+ typeof arg === 'boolean' ||
93
+ typeof arg === 'number' ||
94
+ typeof arg === 'string' ||
95
+ typeof arg === 'symbol' || // ES6 symbol
96
+ typeof arg === 'undefined';
97
+ }
98
+ exports.isPrimitive = isPrimitive;
99
+
100
+ function isBuffer(arg) {
101
+ return Buffer.isBuffer(arg);
102
+ }
103
+ exports.isBuffer = isBuffer;
104
+
105
+ function objectToString(o) {
106
+ return Object.prototype.toString.call(o);
107
+ }