diff --git a/package.json b/package.json index 15f94623f2e..e6bd7b0c3cf 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "precommit": "lint-staged" }, "devDependencies": { - "eslint": "3.16.1", + "eslint": "3.19.0", "husky": "^0.13.2", "lerna": "2.0.0-beta.38", "lerna-changelog": "^0.2.3", diff --git a/packages/babel-preset-react-app/package.json b/packages/babel-preset-react-app/package.json index aa955e43762..14d5fa3bc83 100644 --- a/packages/babel-preset-react-app/package.json +++ b/packages/babel-preset-react-app/package.json @@ -11,18 +11,18 @@ "index.js" ], "dependencies": { - "babel-plugin-dynamic-import-node": "1.0.0", + "babel-plugin-dynamic-import-node": "1.0.2", "babel-plugin-syntax-dynamic-import": "6.18.0", - "babel-plugin-transform-class-properties": "6.23.0", + "babel-plugin-transform-class-properties": "6.24.1", "babel-plugin-transform-object-rest-spread": "6.23.0", "babel-plugin-transform-react-constant-elements": "6.23.0", - "babel-plugin-transform-react-jsx": "6.23.0", + "babel-plugin-transform-react-jsx": "6.24.1", "babel-plugin-transform-react-jsx-self": "6.22.0", "babel-plugin-transform-react-jsx-source": "6.22.0", - "babel-plugin-transform-regenerator": "6.22.0", + "babel-plugin-transform-regenerator": "6.24.1", "babel-plugin-transform-runtime": "6.23.0", - "babel-preset-env": "1.2.1", - "babel-preset-react": "6.23.0", + "babel-preset-env": "1.4.0", + "babel-preset-react": "6.24.1", "babel-runtime": "6.23.0" } } diff --git a/packages/eslint-config-react-app/README.md b/packages/eslint-config-react-app/README.md index 7e247776d7c..0679552a29a 100644 --- a/packages/eslint-config-react-app/README.md +++ b/packages/eslint-config-react-app/README.md @@ -19,7 +19,7 @@ If you want to use this ESLint configuration in a project not built with Create First, install this package, ESLint and the necessary plugins. ```sh - npm install --save-dev eslint-config-react-app babel-eslint@7.1.1 eslint@3.16.1 eslint-plugin-flowtype@2.21.0 eslint-plugin-import@2.0.1 eslint-plugin-jsx-a11y@5.0.1 eslint-plugin-react@6.4.1 + npm install --save-dev eslint-config-react-app babel-eslint@7.2.3 eslint@3.19.0 eslint-plugin-flowtype@2.33.0 eslint-plugin-import@2.2.0 eslint-plugin-jsx-a11y@5.0.1 eslint-plugin-react@7.0.1 ``` Then create a file named `.eslintrc` with following contents in the root folder of your project: diff --git a/packages/eslint-config-react-app/index.js b/packages/eslint-config-react-app/index.js index ec89d41892c..2f8b41ceb06 100644 --- a/packages/eslint-config-react-app/index.js +++ b/packages/eslint-config-react-app/index.js @@ -109,16 +109,6 @@ module.exports = { }, }, - settings: { - 'import/ignore': ['node_modules'], - 'import/extensions': ['.js'], - 'import/resolver': { - node: { - extensions: ['.js', '.json'], - }, - }, - }, - rules: { // http://eslint.org/docs/rules/ 'array-callback-return': 'warn', @@ -242,38 +232,13 @@ module.exports = { }, ], - // https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/ - - // TODO: import rules are temporarily disabled because they don't play well - // with how eslint-loader only checks the file you change. So if module A - // imports module B, and B is missing a default export, the linter will - // record this as an issue in module A. Now if you fix module B, the linter - // will not be aware that it needs to re-lint A as well, so the error - // will stay until the next restart, which is really confusing. - - // This is probably fixable with a patch to eslint-loader. - // When file A is saved, we want to invalidate all files that import it - // *and* that currently have lint errors. This should fix the problem. - // (As an exception, import/no-webpack-loader-syntax can be enabled already - // because it doesn't depend on whether the file exists, so this issue - // doesn't apply to it.) - - // 'import/default': 'warn', - // 'import/export': 'warn', - // 'import/named': 'warn', - // 'import/namespace': 'warn', - // 'import/no-amd': 'warn', - // 'import/no-duplicates': 'warn', - // 'import/no-extraneous-dependencies': 'warn', - // 'import/no-named-as-default': 'warn', - // 'import/no-named-as-default-member': 'warn', - // 'import/no-unresolved': ['warn', { commonjs: true }], - // We don't support configuring Webpack using import source strings, so this - // is always an error. + // https://github.com/benmosher/eslint-plugin-import/tree/master/docs/rules 'import/no-webpack-loader-syntax': 'error', // https://github.com/yannickcr/eslint-plugin-react/tree/master/docs/rules + 'react/jsx-no-comment-textnodes': 'warn', 'react/jsx-no-duplicate-props': ['warn', { ignoreCase: true }], + 'react/jsx-no-target-blank': 'warn', 'react/jsx-no-undef': 'error', 'react/jsx-pascal-case': [ 'warn', @@ -289,7 +254,7 @@ module.exports = { 'react/no-direct-mutation-state': 'warn', 'react/no-is-mounted': 'warn', 'react/react-in-jsx-scope': 'error', - 'react/require-render-return': 'warn', + 'react/require-render-return': 'error', 'react/style-prop-object': 'warn', // https://github.com/evcohen/eslint-plugin-jsx-a11y/tree/master/docs/rules diff --git a/packages/eslint-config-react-app/package.json b/packages/eslint-config-react-app/package.json index 298070bd491..1329f32233e 100644 --- a/packages/eslint-config-react-app/package.json +++ b/packages/eslint-config-react-app/package.json @@ -11,11 +11,11 @@ "index.js" ], "peerDependencies": { - "babel-eslint": "^7.0.0", - "eslint": "^3.16.1", - "eslint-plugin-flowtype": "^2.21.0", - "eslint-plugin-import": "^2.0.1", - "eslint-plugin-jsx-a11y": "^5.0.0", - "eslint-plugin-react": "^6.4.1" + "babel-eslint": "^7.2.3", + "eslint": "^3.19.0", + "eslint-plugin-flowtype": "^2.33.0", + "eslint-plugin-import": "^2.2.0", + "eslint-plugin-jsx-a11y": "^5.0.1", + "eslint-plugin-react": "^7.0.1" } } diff --git a/packages/react-dev-utils/package.json b/packages/react-dev-utils/package.json index b33f200a092..67e0e30bde8 100644 --- a/packages/react-dev-utils/package.json +++ b/packages/react-dev-utils/package.json @@ -29,18 +29,18 @@ ], "dependencies": { "address": "1.0.1", - "anser": "1.1.0", - "babel-code-frame": "6.20.0", + "anser": "1.3.0", + "babel-code-frame": "6.22.0", "chalk": "1.1.3", "cross-spawn": "4.0.2", "escape-string-regexp": "1.0.5", "filesize": "3.3.0", "gzip-size": "3.0.0", - "html-entities": "1.2.0", - "opn": "4.0.2", - "recursive-readdir": "2.1.1", - "shell-quote": "^1.6.1", - "sockjs-client": "1.1.2", + "html-entities": "1.2.1", + "opn": "5.0.0", + "recursive-readdir": "2.2.1", + "shell-quote": "1.6.1", + "sockjs-client": "1.1.4", "stack-frame-mapper": "0.4.0", "stack-frame-parser": "0.4.0", "stack-frame-unmapper": "0.4.0", diff --git a/packages/react-error-overlay/package.json b/packages/react-error-overlay/package.json index 9f4eeab8fd4..ea0bbe1cedc 100644 --- a/packages/react-error-overlay/package.json +++ b/packages/react-error-overlay/package.json @@ -30,26 +30,26 @@ "lib/" ], "dependencies": { - "anser": "^1.2.5", - "babel-code-frame": "^6.22.0", - "babel-runtime": "^6.23.0", + "anser": "1.2.5", + "babel-code-frame": "6.22.0", + "babel-runtime": "6.23.0", "react-dev-utils": "^0.5.2", - "settle-promise": "^1.0.0" + "settle-promise": "1.0.0" }, "devDependencies": { - "babel-cli": "^6.24.1", - "babel-eslint": "7.x", + "babel-cli": "6.24.1", + "babel-eslint": "7.2.3", "babel-preset-react-app": "^2.1.1", - "cross-env": "^4.0.0", - "eslint": "^3.16.1", + "cross-env": "5.0.0", + "eslint": "3.19.0", "eslint-config-react-app": "^0.6.1", - "eslint-plugin-flowtype": "^2.21.0", - "eslint-plugin-import": "^2.0.1", - "eslint-plugin-jsx-a11y": "^5.0.0", - "eslint-plugin-react": "^6.4.1", - "flow-bin": "^0.46.0", - "jest": "19.x", - "jest-fetch-mock": "^1.1.1" + "eslint-plugin-flowtype": "2.33.0", + "eslint-plugin-import": "2.2.0", + "eslint-plugin-jsx-a11y": "5.0.1", + "eslint-plugin-react": "7.0.1", + "flow-bin": "0.46.0", + "jest": "19.0.2", + "jest-fetch-mock": "1.1.1" }, "jest": { "setupFiles": [ diff --git a/packages/react-scripts/config/env.js b/packages/react-scripts/config/env.js index 0097f3cf304..6d14719d6ad 100644 --- a/packages/react-scripts/config/env.js +++ b/packages/react-scripts/config/env.js @@ -34,7 +34,6 @@ var dotenvFiles = [ dotenvFiles.forEach(dotenvFile => { if (fs.existsSync(dotenvFile)) { require('dotenv').config({ - silent: true, path: dotenvFile, }); } diff --git a/packages/react-scripts/package.json b/packages/react-scripts/package.json index 80d91f75a00..d76eb50d152 100644 --- a/packages/react-scripts/package.json +++ b/packages/react-scripts/package.json @@ -23,40 +23,39 @@ "dependencies": { "@timer/detect-port": "1.1.2", "address": "1.0.1", - "autoprefixer": "6.7.7", - "babel-core": "6.23.1", - "babel-eslint": "7.1.1", + "autoprefixer": "7.1.0", + "babel-core": "6.24.1", + "babel-eslint": "7.2.3", "babel-jest": "19.0.0", "babel-loader": "7.0.0", "babel-preset-react-app": "^2.1.1", - "babel-runtime": "^6.20.0", - "case-sensitive-paths-webpack-plugin": "1.1.4", + "babel-runtime": "6.23.0", + "case-sensitive-paths-webpack-plugin": "2.0.0", "chalk": "1.1.3", "connect-history-api-fallback": "1.3.0", "cross-spawn": "4.0.2", - "css-loader": "0.28.0", - "dotenv": "2.0.0", - "eslint": "3.16.1", + "css-loader": "0.28.1", + "dotenv": "4.0.0", + "eslint": "3.19.0", "eslint-config-react-app": "^0.6.1", "eslint-loader": "1.7.1", - "eslint-plugin-flowtype": "2.21.0", - "eslint-plugin-import": "2.0.1", + "eslint-plugin-flowtype": "2.33.0", + "eslint-plugin-import": "2.2.0", "eslint-plugin-jsx-a11y": "5.0.1", - "eslint-plugin-react": "6.4.1", + "eslint-plugin-react": "7.0.1", "extract-text-webpack-plugin": "2.1.0", "file-loader": "0.11.1", - "fs-extra": "0.30.0", + "fs-extra": "3.0.1", "html-webpack-plugin": "2.28.0", - "http-proxy-middleware": "0.17.3", "inquirer": "3.0.6", "jest": "19.0.2", "object-assign": "4.1.1", - "postcss-flexbugs-fixes": "2.1.0", - "postcss-loader": "1.3.3", + "postcss-flexbugs-fixes": "3.0.0", + "postcss-loader": "2.0.5", "promise": "7.1.1", "react-dev-utils": "^0.5.2", "react-error-overlay": "^0.0.0", - "style-loader": "0.16.1", + "style-loader": "0.17.0", "url-loader": "0.5.8", "webpack": "2.5.1", "webpack-dev-server": "2.4.5",