From 8757b25f2c9e4e4eed8af4e0a7d573328ff807a8 Mon Sep 17 00:00:00 2001 From: chnbohwr Date: Sat, 10 Mar 2018 09:52:39 +0800 Subject: [PATCH 1/3] update postcss and autoprefixer --- conf/webpack/Base.js | 25 +---- package-lock.json | 222 +++++++++++++++++++++++++++---------------- package.json | 6 +- postcss.config.js | 14 +-- 4 files changed, 156 insertions(+), 111 deletions(-) diff --git a/conf/webpack/Base.js b/conf/webpack/Base.js index cf1c1f38..bac57991 100644 --- a/conf/webpack/Base.js +++ b/conf/webpack/Base.js @@ -26,11 +26,6 @@ class WebpackBaseConfig { return path.resolve('./test'); } get defaultSettings() { - const cssModulesQuery = { - modules: false, - importLoaders: 1, - localIdentName: '[name]-[local]-[hash:base64:5]' - }; return { context: this.srcPathAbsolute, devtool: 'eval', @@ -72,10 +67,7 @@ class WebpackBaseConfig { test: /\.(sass|scss)$/, loaders: [ { loader: 'style-loader' }, - { - loader: 'css-loader', - query: cssModulesQuery - }, + { loader: 'css-loader' }, { loader: 'postcss-loader' }, { loader: 'sass-loader' } ] @@ -84,10 +76,7 @@ class WebpackBaseConfig { test: /\.css$/, loaders: [ { loader: 'style-loader' }, - { - loader: 'css-loader', - query: cssModulesQuery - }, + { loader: 'css-loader' }, { loader: 'postcss-loader' }, ] }, @@ -95,10 +84,7 @@ class WebpackBaseConfig { test: /\.less$/, loaders: [ { loader: 'style-loader' }, - { - loader: 'css-loader', - query: cssModulesQuery - }, + { loader: 'css-loader' }, { loader: 'postcss-loader' }, { loader: 'less-loader' } ] @@ -107,10 +93,7 @@ class WebpackBaseConfig { test: /\.styl$/, loaders: [ { loader: 'style-loader' }, - { - loader: 'css-loader', - query: cssModulesQuery - }, + { loader: 'css-loader' }, { loader: 'postcss-loader' }, { loader: 'stylus-loader' } ] diff --git a/package-lock.json b/package-lock.json index 455a57e7..7f8546d9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -376,16 +376,78 @@ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, "autoprefixer": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-7.2.4.tgz", - "integrity": "sha512-am8jJ7Rbh1sy7FvLvNxxQScWvhv2FwLAS3bIhvrZpx9HbX5PEcc/7v6ecgpWuiu0Dwlj+p/z/1boHd8x60JFwA==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-8.1.0.tgz", + "integrity": "sha512-b6mjq6VZ0guW6evRkKXL5sSSvIXICAE9dyWReZ3l/riidU7bVaJMe5cQ512SmaLA4Pvgnhi5MFsMs/Mvyh9//Q==", "requires": { - "browserslist": "2.11.0", - "caniuse-lite": "1.0.30000787", + "browserslist": "3.1.2", + "caniuse-lite": "1.0.30000813", "normalize-range": "0.1.2", "num2fraction": "1.2.2", - "postcss": "6.0.15", + "postcss": "6.0.19", "postcss-value-parser": "3.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "1.9.1" + } + }, + "browserslist": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.1.2.tgz", + "integrity": "sha512-iO5MiK7MZXejqfnCK8onktxxb+mcW+KMiL/5gGF/UCWvVgPzbgbkA5cyYfqj/IIHHo7X1z0znrSHPw9AIfpvrw==", + "requires": { + "caniuse-lite": "1.0.30000813", + "electron-to-chromium": "1.3.37" + } + }, + "caniuse-lite": { + "version": "1.0.30000813", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000813.tgz", + "integrity": "sha512-A8ITSmH5SFdMFdC704ggjg+x2z5PzQmVlG8tavwnfvbC33Q1UYrj0+G+Xm0SNAnd4He36fwUE/KEWytOEchw+A==" + }, + "chalk": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", + "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", + "requires": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.3.0" + } + }, + "electron-to-chromium": { + "version": "1.3.37", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.37.tgz", + "integrity": "sha1-SpJzTgBEyM8LFVO+V+riGkxuX6s=" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + }, + "postcss": { + "version": "6.0.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.19.tgz", + "integrity": "sha512-f13HRz0HtVwVaEuW6J6cOUCBLFtymhgyLPV7t4QEk2UD3twRI9IluDcQNdzQdBpiixkXj2OmzejhhTbSbDxNTg==", + "requires": { + "chalk": "2.3.2", + "source-map": "0.6.1", + "supports-color": "5.3.0" + } + }, + "supports-color": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz", + "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", + "requires": { + "has-flag": "3.0.0" + } + } } }, "aws-sign2": { @@ -4910,7 +4972,7 @@ "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-2.1.0.tgz", "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", "requires": { - "postcss": "6.0.15" + "postcss": "6.0.19" } }, "ieee754": { @@ -6629,13 +6691,33 @@ } }, "postcss": { - "version": "6.0.15", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.15.tgz", - "integrity": "sha512-v/SpyMzLbtkmh45zUdaqLAaqXqzPdSrw8p4cQVO0/w6YiYfpj4k+Wkzhn68qk9br+H+0qfddhdPEVnbmBPfXVQ==", + "version": "6.0.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.19.tgz", + "integrity": "sha512-f13HRz0HtVwVaEuW6J6cOUCBLFtymhgyLPV7t4QEk2UD3twRI9IluDcQNdzQdBpiixkXj2OmzejhhTbSbDxNTg==", "requires": { - "chalk": "2.3.0", + "chalk": "2.3.2", "source-map": "0.6.1", - "supports-color": "5.1.0" + "supports-color": "5.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "1.9.1" + } + }, + "chalk": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", + "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", + "requires": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.3.0" + } + } } }, "postcss-calc": { @@ -7242,69 +7324,14 @@ } }, "postcss-loader": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-1.3.3.tgz", - "integrity": "sha1-piHqH6KQYqg5cqRvVEhncTAZFus=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.1.1.tgz", + "integrity": "sha512-f0J/DWE/hyO9/LH0WHpXkny/ZZ238sSaG3p1SRBtVZnFWUtD7GXIEgHoBg8cnAeRbmEvUxHQptY46zWfwNYj/w==", "requires": { "loader-utils": "1.1.0", - "object-assign": "4.1.1", - "postcss": "5.2.18", - "postcss-load-config": "1.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" - }, - "dependencies": { - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" - } - } - }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=" - }, - "postcss": { - "version": "5.2.18", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", - "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", - "requires": { - "chalk": "1.1.3", - "js-base64": "2.4.0", - "source-map": "0.5.7", - "supports-color": "3.2.3" - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "requires": { - "has-flag": "1.0.0" - } - } + "postcss": "6.0.19", + "postcss-load-config": "1.2.0", + "schema-utils": "0.4.5" } }, "postcss-merge-idents": { @@ -7782,7 +7809,7 @@ "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz", "integrity": "sha1-thTJcgvmgW6u41+zpfqh26agXds=", "requires": { - "postcss": "6.0.15" + "postcss": "6.0.19" } }, "postcss-modules-local-by-default": { @@ -7791,7 +7818,7 @@ "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", "requires": { "css-selector-tokenizer": "0.7.0", - "postcss": "6.0.15" + "postcss": "6.0.19" } }, "postcss-modules-scope": { @@ -7800,7 +7827,7 @@ "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", "requires": { "css-selector-tokenizer": "0.7.0", - "postcss": "6.0.15" + "postcss": "6.0.19" } }, "postcss-modules-values": { @@ -7809,7 +7836,7 @@ "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", "requires": { "icss-replace-symbols": "1.1.0", - "postcss": "6.0.15" + "postcss": "6.0.19" } }, "postcss-normalize-charset": { @@ -9067,6 +9094,32 @@ "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, + "schema-utils": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz", + "integrity": "sha512-yYrjb9TX2k/J1Y5UNy3KYdZq10xhYcF8nMpAW6o3hy6Q8WSIEf9lJHG/ePnOBfziPM3fvQwfOwa13U/Fh8qTfA==", + "requires": { + "ajv": "6.2.1", + "ajv-keywords": "3.1.0" + }, + "dependencies": { + "ajv": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.2.1.tgz", + "integrity": "sha1-KKarxJOiq+D7TIUHrK7bQ/pVBnE=", + "requires": { + "fast-deep-equal": "1.0.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, + "ajv-keywords": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.1.0.tgz", + "integrity": "sha1-rCsnk5xUPpXSwG5/f1wnvkqlQ74=" + } + } + }, "scss-tokenizer": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", @@ -9525,11 +9578,18 @@ } }, "supports-color": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", - "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz", + "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", "requires": { - "has-flag": "2.0.0" + "has-flag": "3.0.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + } } }, "svgo": { diff --git a/package.json b/package.json index e018d5eb..30f967b8 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "version": "0.0.1", "author": "Your name here", "dependencies": { - "autoprefixer": "^7.2.4", + "autoprefixer": "^8.1.0", "babel-core": "^6.7.6", "babel-eslint": "^8.1.2", "babel-loader": "^7.1.2", @@ -31,8 +31,8 @@ "less-loader": "^2.2.3", "node-sass": "^4.5.3", "null-loader": "^0.1.1", - "postcss": "^6.0.15", - "postcss-loader": "^1.3.3", + "postcss": "^6.0.19", + "postcss-loader": "^2.1.1", "react": "^16.0.0", "react-dom": "^16.0.0", "react-hot-loader": "^3.0.0-beta.6", diff --git a/postcss.config.js b/postcss.config.js index 81d44f01..68195cf5 100644 --- a/postcss.config.js +++ b/postcss.config.js @@ -1,6 +1,8 @@ -const data = { - plugins: [ - require('autoprefixer') - ] -}; -module.exports = data; +module.exports = ({ file, options, env }) => { + // browser support list see here: https://github.com/ai/browserslist#queries + return ({ + plugins: { + 'autoprefixer': { browsers: 'last 2 version' }, + } + }) +} \ No newline at end of file From c975e605f2bc7366991fb1afc50f3ea4cb6fe543 Mon Sep 17 00:00:00 2001 From: chnbohwr Date: Sat, 10 Mar 2018 09:54:40 +0800 Subject: [PATCH 2/3] reduce code --- postcss.config.js | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/postcss.config.js b/postcss.config.js index 68195cf5..7640c748 100644 --- a/postcss.config.js +++ b/postcss.config.js @@ -1,8 +1,6 @@ -module.exports = ({ file, options, env }) => { - // browser support list see here: https://github.com/ai/browserslist#queries - return ({ - plugins: { - 'autoprefixer': { browsers: 'last 2 version' }, - } - }) -} \ No newline at end of file +// browser support list see here: https://github.com/ai/browserslist#queries +module.exports = ({ file, options, env }) => ({ + plugins: { + 'autoprefixer': { browsers: 'last 2 version' }, + } +}); \ No newline at end of file From f403f416c00c7382d6a2a5ccb64e315fd8d15186 Mon Sep 17 00:00:00 2001 From: chnbohwr Date: Sat, 10 Mar 2018 10:05:56 +0800 Subject: [PATCH 3/3] update less and less loader --- package-lock.json | 30 +++++++++++++----------------- package.json | 4 ++-- 2 files changed, 15 insertions(+), 19 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7f8546d9..1f728e1e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5496,9 +5496,9 @@ } }, "less": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/less/-/less-2.7.3.tgz", - "integrity": "sha512-KPdIJKWcEAb02TuJtaLrhue0krtRLoRoo7x6BNJIBelO00t/CCdJQUnHW5V34OnHMWzIktSalJxRO+FvytQlCQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/less/-/less-3.0.1.tgz", + "integrity": "sha512-qUR4uNv88/c0mpnGOULgMLRXXSD6X0tYo4cVrokzsvn68+nuj8rskInCSe2eLAVYWGD/oAlq8P7J/FeZ/euKiw==", "requires": { "errno": "0.1.6", "graceful-fs": "4.1.11", @@ -5519,23 +5519,19 @@ } }, "less-loader": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-2.2.3.tgz", - "integrity": "sha1-ttj4E5yEk98J2ZKpOgBzSwj4RSg=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-4.1.0.tgz", + "integrity": "sha512-KNTsgCE9tMOM70+ddxp9yyt9iHqgmSs0yTZc5XH5Wo+g80RWRIYNqE58QJKm/yMud5wZEvz50ugRDuzVIkyahg==", "requires": { - "loader-utils": "0.2.17" + "clone": "2.1.1", + "loader-utils": "1.1.0", + "pify": "3.0.0" }, "dependencies": { - "loader-utils": { - "version": "0.2.17", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", - "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", - "requires": { - "big.js": "3.2.0", - "emojis-list": "2.1.0", - "json5": "0.5.1", - "object-assign": "4.1.1" - } + "clone": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz", + "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=" } } }, diff --git a/package.json b/package.json index 30f967b8..5b5c057b 100644 --- a/package.json +++ b/package.json @@ -27,8 +27,8 @@ "file-loader": "^0.9.0", "gh-pages": "^1.0.0", "html-webpack-plugin": "^2.28.0", - "less": "^2.7.1", - "less-loader": "^2.2.3", + "less": "^3.0.1", + "less-loader": "^4.1.0", "node-sass": "^4.5.3", "null-loader": "^0.1.1", "postcss": "^6.0.19",