Skip to content

Commit

Permalink
tools: enable no-undef, define globals for eslint
Browse files Browse the repository at this point in the history
- Enable the no-undef rule for everything except tests.
- Instead of relying on the predefined node environment, specify all our
globals manually and as read-only.
- Enable globalReturn which was previously implied by the node
  environment.
  • Loading branch information
silverwind committed May 29, 2015
1 parent 4e90c82 commit 97c17c7
Show file tree
Hide file tree
Showing 6 changed files with 67 additions and 55 deletions.
1 change: 1 addition & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ test/addons/doc-*/
test/fixtures
test/**/node_modules
test/parallel/test-fs-non-number-arguments-throw.js
test/disabled
84 changes: 49 additions & 35 deletions .eslintrc
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
env:
node: true

# enable ECMAScript features
ecmaFeatures:
blockBindings: true
Expand All @@ -10,6 +7,7 @@ ecmaFeatures:
generators: true
forOf: true
objectLiteralShorthandProperties: true
globalReturn: true

rules:
# Possible Errors
Expand Down Expand Up @@ -39,14 +37,9 @@ rules:
# Stylistic Issues
# list: https://github.com/eslint/eslint/tree/master/docs/rules#stylistic-issues
## use single quote, we can use double quote when escape chars
quotes:
- 2
- "single"
- "avoid-escape"
quotes: [2, "single", "avoid-escape"]
## 2 space indentation
indent:
- 2
- 2
indent: [2, 2]
## add space after comma
## set to 'warn' because of https://github.com/eslint/eslint/issues/2408
comma-spacing: 1
Expand All @@ -63,35 +56,56 @@ rules:
## require parens for Constructor
new-parens: 2
## max 80 length
max-len:
- 2
- 80
- 2
max-len: [2, 80, 2]

# Strict Mode
# list: https://github.com/eslint/eslint/tree/master/docs/rules#strict-mode
## 'use strict' on top
strict:
- 2
- "global"
strict: [2, "global"]

# Variables
# list: https://github.com/eslint/eslint/tree/master/docs/rules#variables
## disallow use of undefined variables (globals)
no-undef: 2

# Global scoped method and vars
globals:
DTRACE_HTTP_CLIENT_REQUEST: true
LTTNG_HTTP_CLIENT_REQUEST: true
COUNTER_HTTP_CLIENT_REQUEST: true
DTRACE_HTTP_CLIENT_RESPONSE: true
LTTNG_HTTP_CLIENT_RESPONSE: true
COUNTER_HTTP_CLIENT_RESPONSE: true
DTRACE_HTTP_SERVER_REQUEST: true
LTTNG_HTTP_SERVER_REQUEST: true
COUNTER_HTTP_SERVER_REQUEST: true
DTRACE_HTTP_SERVER_RESPONSE: true
LTTNG_HTTP_SERVER_RESPONSE: true
COUNTER_HTTP_SERVER_RESPONSE: true
DTRACE_NET_STREAM_END: true
LTTNG_NET_STREAM_END: true
COUNTER_NET_SERVER_CONNECTION_CLOSE: true
DTRACE_NET_SERVER_CONNECTION: true
LTTNG_NET_SERVER_CONNECTION: true
COUNTER_NET_SERVER_CONNECTION: true
DTRACE_HTTP_CLIENT_REQUEST: false
LTTNG_HTTP_CLIENT_REQUEST: false
COUNTER_HTTP_CLIENT_REQUEST: false
DTRACE_HTTP_CLIENT_RESPONSE: false
LTTNG_HTTP_CLIENT_RESPONSE: false
COUNTER_HTTP_CLIENT_RESPONSE: false
DTRACE_HTTP_SERVER_REQUEST: false
LTTNG_HTTP_SERVER_REQUEST: false
COUNTER_HTTP_SERVER_REQUEST: false
DTRACE_HTTP_SERVER_RESPONSE: false
LTTNG_HTTP_SERVER_RESPONSE: false
COUNTER_HTTP_SERVER_RESPONSE: false
DTRACE_NET_STREAM_END: false
LTTNG_NET_STREAM_END: false
COUNTER_NET_SERVER_CONNECTION_CLOSE: false
DTRACE_NET_SERVER_CONNECTION: false
LTTNG_NET_SERVER_CONNECTION: false
COUNTER_NET_SERVER_CONNECTION: false
__dirname: false
__filename: false
ArrayBuffer: false
Buffer: false
clearImmediate: false
clearInterval: false
clearTimeout: false
console: false
DataView: false
escape: false
exports: false
global: false
GLOBAL: false
Intl: false
module: false
process: false
require: false
root: false
setImmediate: false
setInterval: false
setTimeout: false
5 changes: 5 additions & 0 deletions test/.eslintrc
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,8 @@
rules:
## allow unreachable code
no-unreachable: 0
## allow undeclared variables
no-undef: 0

globals:
gc: false
16 changes: 6 additions & 10 deletions test/parallel/test-cluster-worker-exit.js
Original file line number Diff line number Diff line change
Expand Up @@ -106,17 +106,13 @@ function checkResults(expected_results, results) {
var actual = results[k],
expected = expected_results[k];

if (typeof expected === 'function') {
expected(r[k]);
} else {
var msg = (expected[1] || '') +
(' [expected: ' + expected[0] + ' / actual: ' + actual + ']');
var msg = (expected[1] || '') +
(' [expected: ' + expected[0] + ' / actual: ' + actual + ']');

if (expected && expected.length) {
assert.equal(actual, expected[0], msg);
} else {
assert.equal(actual, expected, msg);
}
if (expected && expected.length) {
assert.equal(actual, expected[0], msg);
} else {
assert.equal(actual, expected, msg);
}
}
}
Expand Down
14 changes: 5 additions & 9 deletions test/parallel/test-cluster-worker-kill.js
Original file line number Diff line number Diff line change
Expand Up @@ -106,16 +106,12 @@ function checkResults(expected_results, results) {
var actual = results[k],
expected = expected_results[k];

if (typeof expected === 'function') {
expected(r[k]);
var msg = (expected[1] || '') +
(' [expected: ' + expected[0] + ' / actual: ' + actual + ']');
if (expected && expected.length) {
assert.equal(actual, expected[0], msg);
} else {
var msg = (expected[1] || '') +
(' [expected: ' + expected[0] + ' / actual: ' + actual + ']');
if (expected && expected.length) {
assert.equal(actual, expected[0], msg);
} else {
assert.equal(actual, expected, msg);
}
assert.equal(actual, expected, msg);
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion test/pummel/test-net-timeout.js
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ process.on('exit', function() {
assert.ok(starttime != null);
assert.ok(timeouttime != null);

diff = timeouttime - starttime;
var diff = timeouttime - starttime;
console.log('diff = ' + diff);

assert.ok(timeout < diff);
Expand Down

0 comments on commit 97c17c7

Please sign in to comment.