Browse Source

Lint

v0.7.4-release
Ryan Dahl 14 years ago
parent
commit
5a05992155
  1. 38
      lib/_debugger.js
  2. 28
      lib/fs.js
  3. 1
      lib/os.js
  4. 78
      lib/path.js
  5. 2
      lib/readline.js
  6. 4
      lib/repl.js
  7. 8
      lib/tls.js
  8. 6
      src/node.js

38
lib/_debugger.js

@ -86,7 +86,7 @@ Protocol.prototype.execute = function(d) {
break;
default:
throw new Error("Unknown state");
throw new Error('Unknown state');
break;
}
};
@ -121,13 +121,13 @@ function Client() {
});
protocol.onResponse = this._onResponse.bind(this);
};
}
inherits(Client, net.Stream);
exports.Client = Client;
Client.prototype._addHandle = function(desc) {
if (typeof desc != 'object' || !desc.handle) throw new Error("bad type");
if (typeof desc != 'object' || !desc.handle) throw new Error('bad type');
this.handles[desc.handle] = desc;
if (desc.type == 'script') {
@ -292,8 +292,8 @@ Client.prototype.step = function(action, count, cb) {
var helpMessage = "Commands: run, kill, print, step, next, " +
"continue, scripts, backtrace, version, quit";
var helpMessage = 'Commands: run, kill, print, step, next, ' +
'continue, scripts, backtrace, version, quit';
function SourceUnderline(sourceText, position) {
if (!sourceText) return;
@ -425,7 +425,7 @@ Interface.prototype.pause = function() {
Interface.prototype.resume = function() {
if (!this.paused) return false
if (!this.paused) return false;
this.paused = false;
this.stdin.resume();
this.term.resume();
@ -486,7 +486,7 @@ Interface.prototype.handleCommand = function(cmd) {
self._lastCommand = null;
term.prompt();
} else {
console.log("restarting...");
console.log('restarting...');
self.killChild();
// XXX need to wait a little bit for the restart to work?
setTimeout(function() {
@ -605,7 +605,7 @@ Interface.prototype.handleCommand = function(cmd) {
}
var i = cmd.indexOf(' ');
if (i < 0) {
console.log("print [expression]");
console.log('print [expression]');
term.prompt();
} else {
cmd = cmd.slice(i);
@ -639,7 +639,7 @@ Interface.prototype.yesNoQuestion = function(prompt, cb) {
} else if (/^n(o)?$/i.test(answer)) {
cb(false);
} else {
console.log("Please answer y or n.");
console.log('Please answer y or n.');
self.restartQuestion(cb);
}
});
@ -647,18 +647,18 @@ Interface.prototype.yesNoQuestion = function(prompt, cb) {
Interface.prototype.restartQuestion = function(cb) {
this.yesNoQuestion("The program being debugged has been started already.\n" +
"Start it from the beginning? (y or n) ", cb);
this.yesNoQuestion('The program being debugged has been started already.\n' +
'Start it from the beginning? (y or n) ', cb);
};
Interface.prototype.killQuestion = function(cb) {
this.yesNoQuestion("Kill the program being debugged? (y or n) ", cb);
this.yesNoQuestion('Kill the program being debugged? (y or n) ', cb);
};
Interface.prototype.quitQuestion = function(cb) {
this.yesNoQuestion("A debugging session is active. Quit anyway? (y or n) ",
this.yesNoQuestion('A debugging session is active. Quit anyway? (y or n) ',
cb);
};
@ -689,12 +689,12 @@ Interface.prototype.trySpawn = function(cb) {
this.pause();
setTimeout(function() {
process.stdout.write("connecting...");
process.stdout.write('connecting...');
var client = self.client = new Client();
client.connect(exports.port);
client.once('ready', function() {
process.stdout.write("ok\r\n");
process.stdout.write('ok\r\n');
// since we did debug-brk, we're hitting a break point immediately
// continue before anything else.
@ -704,14 +704,14 @@ Interface.prototype.trySpawn = function(cb) {
});
client.on('close', function() {
console.log("\nprogram terminated");
console.log('\nprogram terminated');
self.client = null;
self.killChild();
if (!self.quitting) self.term.prompt();
});
client.on('unhandledResponse', function(res) {
console.log("\r\nunhandled res:");
console.log('\r\nunhandled res:');
console.log(res);
self.term.prompt();
});
@ -736,7 +736,9 @@ Interface.prototype.printScripts = function(displayNatives) {
for (var id in client.scripts) {
var script = client.scripts[id];
if (typeof script == 'object' && script.name) {
if (displayNatives || script.name == client.currentScript || !script.isNative) {
if (displayNatives ||
script.name == client.currentScript ||
!script.isNative) {
text += script.name == client.currentScript ? '* ' : ' ';
var n = require('path').split(script.name);
text += n[n.length - 1] + '\n';

28
lib/fs.js

@ -529,10 +529,14 @@ if (isWindows) {
var seenLinks = {},
knownHard = {};
var pos = 0, // current character position in p
current = "", // the partial path so far, including a trailing slash if any
base = "", // the partial path without a trailing slash
previous = ""; // the partial path scanned in the previous round, with slash
// current character position in p
var pos = 0;
// the partial path so far, including a trailing slash if any
var current = '';
// the partial path without a trailing slash
var base = '';
// the partial path scanned in the previous round, with slash
var previous = '';
// walk down the path, swapping out linked pathparts for their real
// values
@ -566,7 +570,7 @@ if (isWindows) {
// resolve the link, then start over
p = path.resolve(previous, seenLinks[id], p.slice(pos));
pos = 0;
previous = base = current = "";
previous = base = current = '';
}
return p;
@ -581,10 +585,14 @@ if (isWindows) {
var seenLinks = {},
knownHard = {};
var pos = 0, // current character position in p
current = "", // the partial path so far, including a trailing slash if any
base = "", // the partial path without a trailing slash
previous = ""; // the partial path scanned in the previous round, with slash
// current character position in p
var pos = 0;
// the partial path so far, including a trailing slash if any
var current = '';
// the partial path without a trailing slash
var base = '';
// the partial path scanned in the previous round, with slash
var previous = '';
// walk down the path, swapping out linked pathparts for their real
// values
@ -641,7 +649,7 @@ if (isWindows) {
// resolve the link, then start over
p = path.resolve(previous, target, p.slice(pos));
pos = 0;
previous = base = current = "";
previous = base = current = '';
return process.nextTick(LOOP);
}

1
lib/os.js

@ -9,3 +9,4 @@ exports.cpus = binding.getCPUs;
exports.type = binding.getOSType;
exports.release = binding.getOSRelease;
exports.isWindows = binding.isWindows;

78
lib/path.js

@ -2,9 +2,10 @@
var isWindows = process.platform === 'win32';
// resolves . and .. elements in a path array with directory names
// there must be no slashes, empty elements, or device names (c:\) in the array
// (so also no leading and trailing slashes - it does not distinguish relative and absolute paths)
// resolves . and .. elements in a path array with directory names there
// must be no slashes, empty elements, or device names (c:\) in the array
// (so also no leading and trailing slashes - it does not distinguish
// relative and absolute paths)
function normalizeArray(parts, allowAboveRoot) {
// if the path tries to go above the root, `up` ends up > 0
var up = 0;
@ -38,18 +39,20 @@ if (isWindows) {
// windows version
var splitPathRe = /^(.+(?:[\\\/](?!$)|:)|[\\\/])?((?:.+?)?(\.[^.]*)?)$/;
// Regex to split a windows path into three parts: [*, device, slash, tail]
// windows-only
var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?([\\\/])?(.*?)$/;
// Regex to split a windows path into three parts: [*, device, slash,
// tail] windows-only
var splitDeviceRe =
/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?([\\\/])?(.*?)$/;
// path.resolve([from ...], to)
// windows version
exports.resolve = function() {
// Prepend cwd to provided paths
var paths = [process.cwd()].concat(Array.prototype.slice.call(arguments, 0));
var paths = [process.cwd()].concat(
Array.prototype.slice.call(arguments, 0));
var resolvedDevice = "",
resolvedTail = "",
var resolvedDevice = '',
resolvedTail = '',
resolvedAbsolute = false;
for (var i = paths.length; i >= 0; i--) {
@ -66,7 +69,9 @@ if (isWindows) {
isAbsolute = !!result[2] || isUnc, // UNC paths are always absolute
tail = result[3];
if (device && resolvedDevice && device.toLowerCase() !== resolvedDevice.toLowerCase()) {
if (device &&
resolvedDevice &&
device.toLowerCase() !== resolvedDevice.toLowerCase()) {
// This path points to another device so it is not applicable
continue;
}
@ -92,7 +97,7 @@ if (isWindows) {
// Windows stores the current directories for 'other' drives
// as hidden environment variables like =C:=c:\windows (literally)
// var deviceCwd = os.getCwdForDrive(resolvedDevice);
var deviceCwd = "";
var deviceCwd = '';
// If there is no cwd set for the drive, it is at root
resolvedTail = deviceCwd + '\\' + resolvedTail;
@ -102,17 +107,23 @@ if (isWindows) {
// Replace slashes (in UNC share name) by backslashes
resolvedDevice = resolvedDevice.replace(/\//g, '\\');
// At this point the path should be resolved to a full absolute path, but
// handle relative paths to be safe (might happen when process.cwd() fails)
// At this point the path should be resolved to a full absolute path,
// but handle relative paths to be safe (might happen when process.cwd()
// fails)
// Normalize the tail path
resolvedTail = normalizeArray(resolvedTail.split(/[\\\/]+/).filter(function(p) {
return !!p;
}), !resolvedAbsolute).join('\\');
return (resolvedDevice + (resolvedAbsolute ? '\\' : '') + resolvedTail) || '.';
function f(p) {
return !!p;
}
resolvedTail = normalizeArray(resolvedTail.split(/[\\\/]+/).filter(f),
!resolvedAbsolute).join('\\');
return (resolvedDevice + (resolvedAbsolute ? '\\' : '') + resolvedTail) ||
'.';
};
// windows version
exports.normalize = function(path) {
var result = splitDeviceRe.exec(path),
@ -128,21 +139,23 @@ if (isWindows) {
}), !isAbsolute).join('\\');
if (!tail && !isAbsolute) {
tail = '.'
tail = '.';
}
if (tail && trailingSlash) {
tail += '\\'
tail += '\\';
}
return device + (isAbsolute ? '\\' : '') + tail;
}
};
// windows version
exports.join = function() {
var paths = Array.prototype.slice.call(arguments, 0).filter(function(p) {
function f(p) {
return p && typeof p === 'string';
}),
joined = paths.join('\\');
}
var paths = Array.prototype.slice.call(arguments, 0).filter(f);
var joined = paths.join('\\');
// Make sure that the joined path doesn't start with two slashes
// - it will be mistaken for an unc path by normalize() -
@ -152,7 +165,7 @@ if (isWindows) {
}
return exports.normalize(joined);
}
};
} else /* posix */ {
@ -165,9 +178,10 @@ if (isWindows) {
// posix version
exports.resolve = function() {
// Prepend cwd to provided paths
var paths = [process.cwd()].concat(Array.prototype.slice.call(arguments, 0));
var paths = [process.cwd()].concat(
Array.prototype.slice.call(arguments, 0));
var resolvedPath = "",
var resolvedPath = '',
resolvedAbsolute = false;
for (var i = paths.length; i >= 0 && !resolvedAbsolute; i--) {
@ -189,7 +203,7 @@ if (isWindows) {
}), !resolvedAbsolute).join('/');
return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.';
}
};
// path.normalize(path)
// posix version
@ -203,23 +217,23 @@ if (isWindows) {
}), !isAbsolute).join('/');
if (!path && !isAbsolute) {
path = '.'
path = '.';
}
if (path && trailingSlash) {
path += '/';
}
return (isAbsolute ? '/' : '') + path;
}
};
// posix version
exports.join = function() {
var paths = Array.prototype.slice.call(arguments, 0);
return exports.normalize(paths.filter(function(p, index) {
return p && typeof p === 'string'
return p && typeof p === 'string';
}).join('/'));
}
};
}
@ -227,7 +241,7 @@ exports.dirname = function(path) {
var dir = splitPathRe.exec(path)[1] || '';
if (!dir) {
// No dirname
return '.'
return '.';
} else if (dir.length === 1 ||
(isWindows && dir.length <= 3 && dir.charAt(1) === ':')) {
// It is just a slash or a drive letter with a slash

2
lib/readline.js

@ -109,7 +109,7 @@ Interface.prototype._onLine = function(line) {
var cb = this._questionCallback;
this._questionCallback = null;
this.setPrompt(this._oldPrompt);
cb(line)
cb(line);
} else {
this.emit('line', line);
}

4
lib/repl.js

@ -128,7 +128,9 @@ function REPLServer(prompt, stream) {
try {
// First we attempt to eval as expression with parens.
// This catches '{a : 1}' properly.
ret = vm.runInContext('(' + self.bufferedCommand + ')', context, 'repl');
ret = vm.runInContext('(' + self.bufferedCommand + ')',
context,
'repl');
if (typeof ret !== 'function') success = true;
} catch (e) {
success = false;

8
lib/tls.js

@ -17,8 +17,7 @@ if (process.env.NODE_DEBUG && /tls/.test(process.env.NODE_DEBUG)) {
var Connection = null;
try {
Connection = process.binding('crypto').Connection;
}
catch (e) {
} catch (e) {
throw new Error('node.js not compiled with openssl crypto support.');
}
@ -82,8 +81,8 @@ CryptoStream.prototype.setTimeout = function(n) {
};
// EG '/C=US/ST=CA/L=SF/O=Joyent/OU=Node.js/CN=ca1/emailAddress=ry@clouds.org'
function parseCertString(s) {
// EG '/C=US/ST=CA/L=SF/O=Joyent/OU=Node.js/CN=ca1/emailAddress=ry@tinyclouds.org'
var out = {};
var parts = s.split('/');
// Note: can always skip the first one.
@ -380,8 +379,7 @@ exports.createSecurePair = function(credentials,
/**
* Attempt to cycle OpenSSLs buffers in various directions.
/* Attempt to cycle OpenSSLs buffers in various directions.
*
* An SSL Connection can be viewed as four separate piplines,
* interacting with one has no connection to the behavoir of

6
src/node.js

@ -132,7 +132,11 @@
var path = requireNative('path');
var modulePaths = [path.resolve(process.execPath, '..', '..', 'lib', 'node')];
var modulePaths = [path.resolve(process.execPath,
'..',
'..',
'lib',
'node')];
if (process.env['HOME']) {
modulePaths.unshift(path.resolve(process.env['HOME'], '.node_libraries'));

Loading…
Cancel
Save