From e63ddcb5f5d5270443c37496ec7d011918c67f8e Mon Sep 17 00:00:00 2001 From: Chris Date: Tue, 2 Jun 2015 12:23:15 +0200 Subject: [PATCH] *ADD* Base: Added esLint as new linter --- templates/common/_package.json | 5 +++-- templates/common/_webpack.config.js | 5 ++--- templates/common/_webpack.dist.config.js | 8 ++++---- templates/common/root/.eslintrc | 19 +++++++++++++++++++ 4 files changed, 28 insertions(+), 9 deletions(-) create mode 100644 templates/common/root/.eslintrc diff --git a/templates/common/_package.json b/templates/common/_package.json index 026efab..10fdf2e 100644 --- a/templates/common/_package.json +++ b/templates/common/_package.json @@ -21,6 +21,9 @@ }, "devDependencies": { "grunt": "~0.4.5", + "eslint": "^0.21.2", + "eslint-loader": "^0.11.2", + "eslint-plugin-react": "^2.4.0", "load-grunt-tasks": "~0.6.0", "grunt-contrib-connect": "~0.8.0", "webpack": "~1.4.3", @@ -38,8 +41,6 @@ "karma-webpack": "~1.2.2", "webpack-dev-server": "~1.6.5", "grunt-open": "~0.2.3", - "jshint-loader": "~0.8.0", - "jsxhint-loader": "~0.2.0", "grunt-contrib-copy": "~0.5.0", "babel": "^4.0.0", "babel-loader": "^4.0.0", diff --git a/templates/common/_webpack.config.js b/templates/common/_webpack.config.js index b494d47..e469bb1 100644 --- a/templates/common/_webpack.config.js +++ b/templates/common/_webpack.config.js @@ -41,7 +41,7 @@ module.exports = { preLoaders: [{ test: /\.(js|jsx)$/, exclude: /node_modules/, - loader: 'jsxhint' + loader: 'eslint-loader' }], loaders: [{ test: /\.(js|jsx)$/, @@ -69,8 +69,7 @@ module.exports = { }, plugins: [ - new webpack.HotModuleReplacementPlugin(), - new webpack.NoErrorsPlugin() + new webpack.HotModuleReplacementPlugin() ] }; diff --git a/templates/common/_webpack.dist.config.js b/templates/common/_webpack.dist.config.js index 697c7a2..2f0d830 100644 --- a/templates/common/_webpack.dist.config.js +++ b/templates/common/_webpack.dist.config.js @@ -29,7 +29,8 @@ module.exports = { new webpack.optimize.DedupePlugin(), new webpack.optimize.UglifyJsPlugin(), new webpack.optimize.OccurenceOrderPlugin(), - new webpack.optimize.AggressiveMergingPlugin() + new webpack.optimize.AggressiveMergingPlugin(), + new webpack.NoErrorsPlugin() ], resolve: { @@ -45,11 +46,10 @@ module.exports = { module: { preLoaders: [{ - test: /\.js$/, + test: /\.(js|jsx)$/, exclude: /node_modules/, - loader: 'jsxhint' + loader: 'eslint-loader' }], - loaders: [{ test: /\.js$/, exclude: /node_modules/, diff --git a/templates/common/root/.eslintrc b/templates/common/root/.eslintrc new file mode 100644 index 0000000..274a199 --- /dev/null +++ b/templates/common/root/.eslintrc @@ -0,0 +1,19 @@ +{ + "plugins": [ + "react" + ], + "ecmaFeatures": { + "jsx": true + }, + "env": { + "browser": true, + "amd": true, + "es6": true + }, + "rules": { + "quotes": [ 1, "single" ], + "no-undef": false, + "global-strict": false, + "no-extra-semi": 1 + } +}