aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarak <[email protected]>2021-03-22 13:40:48 -0400
committerMarak <[email protected]>2021-03-22 13:42:23 -0400
commitf218099767a9a356738574c6d94aa8de37ce37f3 (patch)
tree138dfab8e0b93f03ee37711fca4b895234086c2f
parentfff73a514fb7f1bb90cd6588d6bb1f0b3b032eb0 (diff)
parent66ce4c664f429a672ac14821f4a9fe6d3f00a580 (diff)
downloadfaker-f218099767a9a356738574c6d94aa8de37ce37f3.tar.xz
faker-f218099767a9a356738574c6d94aa8de37ce37f3.zip
Migrates to `eslint`
Adds linting rules
-rw-r--r--.eslintignore (renamed from .jshintignore)0
-rw-r--r--.eslintrc53
-rw-r--r--.jshintrc87
-rw-r--r--package.json5
4 files changed, 56 insertions, 89 deletions
diff --git a/.jshintignore b/.eslintignore
index c6b045a5..c6b045a5 100644
--- a/.jshintignore
+++ b/.eslintignore
diff --git a/.eslintrc b/.eslintrc
new file mode 100644
index 00000000..1da14691
--- /dev/null
+++ b/.eslintrc
@@ -0,0 +1,53 @@
+{
+ "env": {
+ "browser": true,
+ "jquery": true,
+ "mocha": true,
+ "node": true
+ },
+ "globals": {},
+ "rules": {
+ "no-multi-str": 2,
+ "no-debugger": 0,
+ "strict": 0,
+ "semi": 0,
+ "linebreak-style": 0,
+ "no-bitwise": 2,
+ "no-cond-assign": 0,
+ "curly": 2,
+ "eqeqeq": 0,
+ "no-eq-null": 0,
+ "no-eval": 0,
+ "no-unused-expressions": 0,
+ "guard-for-in": 0,
+ "wrap-iife": [
+ 2,
+ "any"
+ ],
+ "no-use-before-define": [
+ 2,
+ {
+ "functions": false
+ }
+ ],
+ "no-loop-func": 2,
+ "no-caller": 2,
+ "no-script-url": 2,
+ "no-shadow": 2,
+ "no-new-func": 0,
+ "no-new-wrappers": 0,
+ "no-undef": 2,
+ "new-cap": 0,
+ "no-empty": 2,
+ "no-new": 0,
+ "no-plusplus": 0,
+ "dot-notation": 0,
+ "indent": [
+ 2,
+ 2,
+ {
+ "SwitchCase": 1
+ }
+ ]
+ }
+}
diff --git a/.jshintrc b/.jshintrc
deleted file mode 100644
index 1f120860..00000000
--- a/.jshintrc
+++ /dev/null
@@ -1,87 +0,0 @@
-{
- // Settings
- "passfail" : false, // Stop on first error.
- "maxerr" : 500, // Maximum errors before stopping.
- "multistr" : true,
-
-
- // Predefined globals whom JSHint will ignore.
- "browser" : true, // Standard browser globals e.g. `window`, `document`.
-
- "node" : false,
- "rhino" : false,
- "couch" : false,
- "wsh" : true, // Windows Scripting Host.
-
- "jquery" : true,
- "prototypejs" : false,
- "mootools" : false,
- "dojo" : false,
-
- "predef" : [ // Extra globals.
- "__dirname",
- "Buffer",
- "event",
- "exports",
- "global",
- "logger",
- "module",
- "process",
- "require",
-
- "after",
- "afterEach",
- "before",
- "beforeEach",
- "context",
- "describe",
- "it"
- ],
-
- // Development.
- "debug" : false, // Allow debugger statements e.g. browser breakpoints.
- "devel" : true, // Allow development statements e.g. `console.log();`.
-
-
- // EcmaScript 5.
- "es5" : false, // Allow EcmaScript 5 syntax.
- "strict" : false, // Require `use strict` pragma in every file.
- "globalstrict" : false, // Allow global "use strict" (also enables 'strict').
-
-
- "asi" : false, // Tolerate Automatic Semicolon Insertion (no semicolons).
- "laxbreak" : false, // Tolerate unsafe line breaks e.g. `return [\n] x` without semicolons.
- "bitwise" : true, // Prohibit bitwise operators (&, |, ^, etc.).
- "boss" : false, // Tolerate assignments inside if, for & while. Usually conditions & loops are for comparison, not assignments.
- "curly" : true, // Require {} for every new block or scope.
- "eqeqeq" : false, // Require triple equals i.e. `===`.
- "eqnull" : false, // Tolerate use of `== null`.
- "evil" : false, // Tolerate use of `eval`.
- "expr" : false, // Tolerate `ExpressionStatement` as Programs.
- "forin" : false, // Tolerate `for in` loops without `hasOwnProperty`.
- "immed" : true, // Require immediate invocations to be wrapped in parens e.g. `( function(){}() );`
- "latedef" : true, // Prohibit variable use before definition.
- "loopfunc" : true, // Allow functions to be defined within loops.
- //"maxparams" : 4,
- //"maxdepth" : 5,
- //"maxcomplexity" : 10,
- "noarg" : true, // Prohibit use of `arguments.caller` and `arguments.callee`.
- "regexp" : false, // Prohibit `.` and `[^...]` in regular expressions.
- "regexdash" : false, // Tolerate unescaped last dash i.e. `[-...]`.
- "scripturl" : true, // Tolerate script-targeted URLs.
- "shadow" : false, // Allows re-define variables later in code e.g. `var x=1; x=2;`.
- "supernew" : false, // Tolerate `new function () { ... };` and `new Object;`.
- "undef" : true, // Require all non-global variables be declared before they are used.
-
-
- "newcap" : false, // Require capitalization of all constructor functions e.g. `new F()`.
- "noempty" : true, // Prohibit use of empty blocks.
- "nonew" : false, // Prohibit use of constructors for side-effects.
- "nomen" : false, // Prohibit use of initial or trailing underbars in names.
- "onevar" : false, // Allow only one `var` statement per function.
- "plusplus" : false, // Prohibit use of `++` & `--`.
- "sub" : true, // Tolerate all forms of subscript notation besides dot notation e.g. `dict['key']` instead of `dict.key`.
- "trailing" : true, // Prohibit trailing whitespaces. (only works if white is 'true')
- "white" : true, // Check against strict whitespace and indentation rules.
- "indent" : 4 //
-}
diff --git a/package.json b/package.json
index 2712dd98..f452a6d7 100644
--- a/package.json
+++ b/package.json
@@ -13,7 +13,7 @@
"browser": "./node_modules/.bin/gulp browser",
"jsdoc": "./node_modules/.bin/gulp jsdoc",
"readme": "./node_modules/.bin/gulp readme",
- "lint": "node_modules/.bin/jshint ./lib --config ./.jshintrc",
+ "lint": "node_modules/.bin/eslint ./lib/address.js",
"test": "node_modules/.bin/mocha test/*.*.js",
"coverage": "nyc report --reporter=text-lcov | coveralls"
},
@@ -51,9 +51,10 @@
"gulp-mustache": "^5.0.0",
"gulp-rename": "^2.0.0",
"gulp-uglify": "^3.0.2",
+ "eslint": "^6.5.1",
"ink-docstrap": "1.1.4",
"jsdoc": "^3.4.0",
- "jshint": "0.9.0",
+ "lint-staged": "^9.4.2",
"lodash": "^4.6.1",
"mocha": "^8.1.1",
"node-minify": "*",