summaryrefslogtreecommitdiff
path: root/tools/eslint/conf
diff options
context:
space:
mode:
authorYosuke Furukawa <yosuke.furukawa@gmail.com>2015-04-29 02:03:05 +0900
committerYosuke Furukawa <yosuke.furukawa@gmail.com>2015-05-09 12:09:52 +0900
commitf9dd34d301ab385ae316769b85ef916f9b70b6f6 (patch)
tree9ce5db7bdff46e587535de5549eef7e02656f5d8 /tools/eslint/conf
parent5883a59b21a97e8b7339f435c977155a2c29ba8d (diff)
downloadnode-new-f9dd34d301ab385ae316769b85ef916f9b70b6f6.tar.gz
tools: replace closure-linter with eslint
PR-URL: https://github.com/iojs/io.js/pull/1539 Fixes: https://github.com/iojs/io.js/issues/1253 Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: Trevor Norris <trev.norris@gmail.com> Reviewed-By: Roman Reiss <me@silverwind.io> Reviewed-By: Chris Dickinson <christopher.s.dickinson@gmail.com> Reviewed-By: Johan Bergström <bugs@bergstroem.nu> Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
Diffstat (limited to 'tools/eslint/conf')
-rw-r--r--tools/eslint/conf/environments.js78
-rw-r--r--tools/eslint/conf/eslint.json172
2 files changed, 250 insertions, 0 deletions
diff --git a/tools/eslint/conf/environments.js b/tools/eslint/conf/environments.js
new file mode 100644
index 0000000000..f59b852f94
--- /dev/null
+++ b/tools/eslint/conf/environments.js
@@ -0,0 +1,78 @@
+/**
+ * @fileoverview Defines environment settings and globals.
+ * @author Elan Shanker
+ * @copyright 2014 Elan Shanker. All rights reserved.
+ */
+"use strict";
+
+var globals = require("globals");
+
+module.exports = {
+ builtin: globals.builtin,
+ browser: {
+ globals: globals.browser
+ },
+ node: {
+ globals: globals.node,
+ ecmaFeatures: {
+ globalReturn: true
+ },
+ rules: {
+ "no-catch-shadow": 0,
+ "no-console": 0,
+ "no-mixed-requires": 2,
+ "no-new-require": 2,
+ "no-path-concat": 2,
+ "no-process-exit": 2,
+ "global-strict": [0, "always"],
+ "handle-callback-err": [2, "err"]
+ }
+ },
+ amd: {
+ globals: globals.amd
+ },
+ mocha: {
+ globals: globals.mocha
+ },
+ jasmine: {
+ globals: globals.jasmine
+ },
+ phantomjs: {
+ globals: globals.phantom
+ },
+ jquery: {
+ globals: globals.jquery
+ },
+ prototypejs: {
+ globals: globals.prototypejs
+ },
+ shelljs: {
+ globals: globals.shelljs
+ },
+ meteor: {
+ globals: globals.meteor
+ },
+ es6: {
+ ecmaFeatures: {
+ arrowFunctions: true,
+ blockBindings: true,
+ regexUFlag: true,
+ regexYFlag: true,
+ templateStrings: true,
+ binaryLiterals: true,
+ octalLiterals: true,
+ unicodeCodePointEscapes: true,
+ superInFunctions: true,
+ defaultParams: true,
+ restParams: true,
+ forOf: true,
+ objectLiteralComputedProperties: true,
+ objectLiteralShorthandMethods: true,
+ objectLiteralShorthandProperties: true,
+ objectLiteralDuplicateProperties: true,
+ generators: true,
+ destructuring: true,
+ classes: true
+ }
+ }
+};
diff --git a/tools/eslint/conf/eslint.json b/tools/eslint/conf/eslint.json
new file mode 100644
index 0000000000..dc92cc143d
--- /dev/null
+++ b/tools/eslint/conf/eslint.json
@@ -0,0 +1,172 @@
+{
+ "ecmaFeatures": {},
+ "parser": "espree",
+ "env": {
+ "browser": false,
+ "node": false,
+ "amd": false,
+ "mocha": false,
+ "jasmine": false
+ },
+
+ "rules": {
+ "no-alert": 2,
+ "no-array-constructor": 2,
+ "no-bitwise": 0,
+ "no-caller": 2,
+ "no-catch-shadow": 2,
+ "no-comma-dangle": 0,
+ "no-cond-assign": 2,
+ "no-console": 2,
+ "no-constant-condition": 2,
+ "no-continue": 0,
+ "no-control-regex": 2,
+ "no-debugger": 2,
+ "no-delete-var": 2,
+ "no-div-regex": 0,
+ "no-dupe-keys": 2,
+ "no-dupe-args": 2,
+ "no-duplicate-case": 2,
+ "no-else-return": 0,
+ "no-empty": 2,
+ "no-empty-class": 2,
+ "no-empty-label": 2,
+ "no-eq-null": 0,
+ "no-eval": 2,
+ "no-ex-assign": 2,
+ "no-extend-native": 2,
+ "no-extra-bind": 2,
+ "no-extra-boolean-cast": 2,
+ "no-extra-parens": 0,
+ "no-extra-semi": 2,
+ "no-extra-strict": 2,
+ "no-fallthrough": 2,
+ "no-floating-decimal": 0,
+ "no-func-assign": 2,
+ "no-implied-eval": 2,
+ "no-inline-comments": 0,
+ "no-inner-declarations": [2, "functions"],
+ "no-invalid-regexp": 2,
+ "no-irregular-whitespace": 2,
+ "no-iterator": 2,
+ "no-label-var": 2,
+ "no-labels": 2,
+ "no-lone-blocks": 2,
+ "no-lonely-if": 0,
+ "no-loop-func": 2,
+ "no-mixed-requires": [0, false],
+ "no-mixed-spaces-and-tabs": [2, false],
+ "no-multi-spaces": 2,
+ "no-multi-str": 2,
+ "no-multiple-empty-lines": [0, {"max": 2}],
+ "no-native-reassign": 2,
+ "no-negated-in-lhs": 2,
+ "no-nested-ternary": 0,
+ "no-new": 2,
+ "no-new-func": 2,
+ "no-new-object": 2,
+ "no-new-require": 0,
+ "no-new-wrappers": 2,
+ "no-obj-calls": 2,
+ "no-octal": 2,
+ "no-octal-escape": 2,
+ "no-param-reassign": 0,
+ "no-path-concat": 0,
+ "no-plusplus": 0,
+ "no-process-env": 0,
+ "no-process-exit": 2,
+ "no-proto": 2,
+ "no-redeclare": 2,
+ "no-regex-spaces": 2,
+ "no-reserved-keys": 0,
+ "no-restricted-modules": 0,
+ "no-return-assign": 2,
+ "no-script-url": 2,
+ "no-self-compare": 0,
+ "no-sequences": 2,
+ "no-shadow": 2,
+ "no-shadow-restricted-names": 2,
+ "no-space-before-semi": 0,
+ "no-spaced-func": 2,
+ "no-sparse-arrays": 2,
+ "no-sync": 0,
+ "no-ternary": 0,
+ "no-trailing-spaces": 2,
+ "no-throw-literal": 0,
+ "no-undef": 2,
+ "no-undef-init": 2,
+ "no-undefined": 0,
+ "no-underscore-dangle": 2,
+ "no-unreachable": 2,
+ "no-unused-expressions": 2,
+ "no-unused-vars": [2, {"vars": "all", "args": "after-used"}],
+ "no-use-before-define": 2,
+ "no-void": 0,
+ "no-var": 0,
+ "no-warning-comments": [0, { "terms": ["todo", "fixme", "xxx"], "location": "start" }],
+ "no-with": 2,
+ "no-wrap-func": 2,
+
+ "block-scoped-var": 0,
+ "brace-style": [0, "1tbs"],
+ "camelcase": 2,
+ "comma-dangle": [2, "never"],
+ "comma-spacing": 2,
+ "comma-style": 0,
+ "complexity": [0, 11],
+ "consistent-return": 2,
+ "consistent-this": [0, "that"],
+ "curly": [2, "all"],
+ "default-case": 0,
+ "dot-notation": [2, { "allowKeywords": true }],
+ "eol-last": 2,
+ "eqeqeq": 2,
+ "func-names": 0,
+ "func-style": [0, "declaration"],
+ "generator-star": 0,
+ "generator-star-spacing": 0,
+ "global-strict": [2, "never"],
+ "guard-for-in": 0,
+ "handle-callback-err": 0,
+ "indent": 0,
+ "key-spacing": [2, { "beforeColon": false, "afterColon": true }],
+ "max-depth": [0, 4],
+ "max-len": [0, 80, 4],
+ "max-nested-callbacks": [0, 2],
+ "max-params": [0, 3],
+ "max-statements": [0, 10],
+ "new-cap": 2,
+ "new-parens": 2,
+ "newline-after-var": 0,
+ "object-shorthand": 0,
+ "one-var": 0,
+ "operator-assignment": [0, "always"],
+ "operator-linebreak": 0,
+ "padded-blocks": 0,
+ "quote-props": 0,
+ "quotes": [2, "double"],
+ "radix": 0,
+ "semi": 2,
+ "semi-spacing": [2, {"before": false, "after": true}],
+ "sort-vars": 0,
+ "space-after-function-name": [0, "never"],
+ "space-after-keywords": [0, "always"],
+ "space-before-blocks": [0, "always"],
+ "space-before-function-paren": [0, "always"],
+ "space-before-function-parentheses": [0, "always"],
+ "space-in-brackets": [0, "never"],
+ "space-in-parens": [0, "never"],
+ "space-infix-ops": 2,
+ "space-return-throw-case": 2,
+ "space-unary-ops": [2, { "words": true, "nonwords": false }],
+ "spaced-line-comment": [0, "always"],
+ "strict": 2,
+ "use-isnan": 2,
+ "valid-jsdoc": 0,
+ "valid-typeof": 2,
+ "vars-on-top": 0,
+ "wrap-iife": 0,
+ "wrap-regex": 0,
+ "yoda": [2, "never"]
+ }
+}