Niedzielski has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/399436 )

Change subject: Chore: add postcss with autoprefixer
......................................................................

Chore: add postcss with autoprefixer

Add postcss with the autoprefixer plugin. autoprefixer is currently
configured to the last two browser versions but may be updated easily.

Bug: T177012
Change-Id: Ib144cd7de629fddefafb2bb99124ca0f6f9a5b3a
---
A .postcssrc.json
M package-lock.json
M package.json
M src/client/webpack.config.ts
4 files changed, 245 insertions(+), 8 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/marvin refs/changes/36/399436/1

diff --git a/.postcssrc.json b/.postcssrc.json
new file mode 100644
index 0000000..57d6e77
--- /dev/null
+++ b/.postcssrc.json
@@ -0,0 +1 @@
+{ "plugins": { "autoprefixer": { "browsers": ["last 2 versions"] } } }
diff --git a/package-lock.json b/package-lock.json
index 977e3d5..1cc57ae 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -492,17 +492,87 @@
       "dev": true
     },
     "autoprefixer": {
-      "version": "6.7.7",
-      "resolved": 
"https://registry.npmjs.org/autoprefixer/-/autoprefixer-6.7.7.tgz";,
-      "integrity": "sha1-Hb0cg1ZY41zj+ZhAmdsAWFx4IBQ=",
+      "version": "7.2.3",
+      "resolved": 
"https://registry.npmjs.org/autoprefixer/-/autoprefixer-7.2.3.tgz";,
+      "integrity": 
"sha512-dqzVGiz3v934+s3YZA6nk7tAs9xuTz5wMJbX1M+L4cY/MTNkOUqP61c1GWkEVlUL/PEy1pKRSCFuoRZrXYx9qA==",
       "dev": true,
       "requires": {
-        "browserslist": "1.7.7",
-        "caniuse-db": "1.0.30000732",
+        "browserslist": "2.10.0",
+        "caniuse-lite": "1.0.30000784",
         "normalize-range": "0.1.2",
         "num2fraction": "1.2.2",
-        "postcss": "5.2.17",
+        "postcss": "6.0.14",
         "postcss-value-parser": "3.3.0"
+      },
+      "dependencies": {
+        "ansi-styles": {
+          "version": "3.2.0",
+          "resolved": 
"https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz";,
+          "integrity": 
"sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==",
+          "dev": true,
+          "requires": {
+            "color-convert": "1.9.0"
+          }
+        },
+        "browserslist": {
+          "version": "2.10.0",
+          "resolved": 
"https://registry.npmjs.org/browserslist/-/browserslist-2.10.0.tgz";,
+          "integrity": 
"sha512-WyvzSLsuAVPOjbljXnyeWl14Ae+ukAT8MUuagKVzIDvwBxl4UAwD1xqtyQs2eWYPGUKMeC3Ol62goqYuKqTTcw==",
+          "dev": true,
+          "requires": {
+            "caniuse-lite": "1.0.30000784",
+            "electron-to-chromium": "1.3.29"
+          }
+        },
+        "chalk": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz";,
+          "integrity": 
"sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "3.2.0",
+            "escape-string-regexp": "1.0.5",
+            "supports-color": "4.5.0"
+          }
+        },
+        "electron-to-chromium": {
+          "version": "1.3.29",
+          "resolved": 
"https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.29.tgz";,
+          "integrity": "sha1-elgja5VGjD52YAkTSFItZddzazY=",
+          "dev": true
+        },
+        "has-flag": {
+          "version": "2.0.0",
+          "resolved": 
"https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz";,
+          "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=",
+          "dev": true
+        },
+        "postcss": {
+          "version": "6.0.14",
+          "resolved": 
"https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz";,
+          "integrity": 
"sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==",
+          "dev": true,
+          "requires": {
+            "chalk": "2.3.0",
+            "source-map": "0.6.1",
+            "supports-color": "4.5.0"
+          }
+        },
+        "source-map": {
+          "version": "0.6.1",
+          "resolved": 
"https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz";,
+          "integrity": 
"sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+          "dev": true
+        },
+        "supports-color": {
+          "version": "4.5.0",
+          "resolved": 
"https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz";,
+          "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=",
+          "dev": true,
+          "requires": {
+            "has-flag": "2.0.0"
+          }
+        }
       }
     },
     "axios": {
@@ -964,6 +1034,12 @@
       "version": "1.0.30000732",
       "resolved": 
"https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000732.tgz";,
       "integrity": "sha1-3bPIheiMr3eccIDuCWU/uF0b0ks=",
+      "dev": true
+    },
+    "caniuse-lite": {
+      "version": "1.0.30000784",
+      "resolved": 
"https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000784.tgz";,
+      "integrity": "sha1-EpztdOmhKApEGIC2zSvOMO9Z5sA=",
       "dev": true
     },
     "capture-stack-trace": {
@@ -1437,6 +1513,29 @@
       "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
       "dev": true
     },
+    "cosmiconfig": {
+      "version": "2.2.2",
+      "resolved": 
"https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-2.2.2.tgz";,
+      "integrity": 
"sha512-GiNXLwAFPYHy25XmTPpafYvn3CLAkJ8FLsscq78MQd1Kh0OU6Yzhn4eV2MVF4G9WEQZoWEGltatdR+ntGPMl5A==",
+      "dev": true,
+      "requires": {
+        "is-directory": "0.3.1",
+        "js-yaml": "3.7.0",
+        "minimist": "1.2.0",
+        "object-assign": "4.1.1",
+        "os-homedir": "1.0.2",
+        "parse-json": "2.2.0",
+        "require-from-string": "1.2.1"
+      },
+      "dependencies": {
+        "minimist": {
+          "version": "1.2.0",
+          "resolved": 
"https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz";,
+          "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
+          "dev": true
+        }
+      }
+    },
     "create-ecdh": {
       "version": "4.0.0",
       "resolved": 
"https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz";,
@@ -1601,6 +1700,22 @@
         "postcss-unique-selectors": "2.0.2",
         "postcss-value-parser": "3.3.0",
         "postcss-zindex": "2.2.0"
+      },
+      "dependencies": {
+        "autoprefixer": {
+          "version": "6.7.7",
+          "resolved": 
"https://registry.npmjs.org/autoprefixer/-/autoprefixer-6.7.7.tgz";,
+          "integrity": "sha1-Hb0cg1ZY41zj+ZhAmdsAWFx4IBQ=",
+          "dev": true,
+          "requires": {
+            "browserslist": "1.7.7",
+            "caniuse-db": "1.0.30000732",
+            "normalize-range": "0.1.2",
+            "num2fraction": "1.2.2",
+            "postcss": "5.2.17",
+            "postcss-value-parser": "3.3.0"
+          }
+        }
       }
     },
     "csso": {
@@ -3629,6 +3744,12 @@
       "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=",
       "dev": true
     },
+    "is-directory": {
+      "version": "0.3.1",
+      "resolved": 
"https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz";,
+      "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=",
+      "dev": true
+    },
     "is-dotfile": {
       "version": "1.0.3",
       "resolved": 
"https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz";,
@@ -5214,6 +5335,12 @@
       "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=",
       "dev": true
     },
+    "os-homedir": {
+      "version": "1.0.2",
+      "resolved": 
"https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz";,
+      "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
+      "dev": true
+    },
     "os-locale": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz";,
@@ -5589,6 +5716,104 @@
       "requires": {
         "postcss": "5.2.17",
         "uniqid": "4.1.1"
+      }
+    },
+    "postcss-load-config": {
+      "version": "1.2.0",
+      "resolved": 
"https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-1.2.0.tgz";,
+      "integrity": "sha1-U56a/J3chiASHr+djDZz4M5Q0oo=",
+      "dev": true,
+      "requires": {
+        "cosmiconfig": "2.2.2",
+        "object-assign": "4.1.1",
+        "postcss-load-options": "1.2.0",
+        "postcss-load-plugins": "2.3.0"
+      }
+    },
+    "postcss-load-options": {
+      "version": "1.2.0",
+      "resolved": 
"https://registry.npmjs.org/postcss-load-options/-/postcss-load-options-1.2.0.tgz";,
+      "integrity": "sha1-sJixVZ3awt8EvAuzdfmaXP4rbYw=",
+      "dev": true,
+      "requires": {
+        "cosmiconfig": "2.2.2",
+        "object-assign": "4.1.1"
+      }
+    },
+    "postcss-load-plugins": {
+      "version": "2.3.0",
+      "resolved": 
"https://registry.npmjs.org/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz";,
+      "integrity": "sha1-dFdoEWWZrKLwCfrUJrABdQSdjZI=",
+      "dev": true,
+      "requires": {
+        "cosmiconfig": "2.2.2",
+        "object-assign": "4.1.1"
+      }
+    },
+    "postcss-loader": {
+      "version": "2.0.9",
+      "resolved": 
"https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.0.9.tgz";,
+      "integrity": 
"sha512-sgoXPtmgVT3aBAhU47Kig8oPF+mbXl8Unjvtz1Qj1q2D2EvSVJW2mKJNzxv5y/LvA9xWwuvdysvhc7Zn80UWWw==",
+      "dev": true,
+      "requires": {
+        "loader-utils": "1.1.0",
+        "postcss": "6.0.14",
+        "postcss-load-config": "1.2.0",
+        "schema-utils": "0.3.0"
+      },
+      "dependencies": {
+        "ansi-styles": {
+          "version": "3.2.0",
+          "resolved": 
"https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz";,
+          "integrity": 
"sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==",
+          "dev": true,
+          "requires": {
+            "color-convert": "1.9.0"
+          }
+        },
+        "chalk": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz";,
+          "integrity": 
"sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "3.2.0",
+            "escape-string-regexp": "1.0.5",
+            "supports-color": "4.5.0"
+          }
+        },
+        "has-flag": {
+          "version": "2.0.0",
+          "resolved": 
"https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz";,
+          "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=",
+          "dev": true
+        },
+        "postcss": {
+          "version": "6.0.14",
+          "resolved": 
"https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz";,
+          "integrity": 
"sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==",
+          "dev": true,
+          "requires": {
+            "chalk": "2.3.0",
+            "source-map": "0.6.1",
+            "supports-color": "4.5.0"
+          }
+        },
+        "source-map": {
+          "version": "0.6.1",
+          "resolved": 
"https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz";,
+          "integrity": 
"sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+          "dev": true
+        },
+        "supports-color": {
+          "version": "4.5.0",
+          "resolved": 
"https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz";,
+          "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=",
+          "dev": true,
+          "requires": {
+            "has-flag": "2.0.0"
+          }
+        }
       }
     },
     "postcss-merge-idents": {
@@ -6561,6 +6786,12 @@
       "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
       "dev": true
     },
+    "require-from-string": {
+      "version": "1.2.1",
+      "resolved": 
"https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz";,
+      "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=",
+      "dev": true
+    },
     "require-main-filename": {
       "version": "1.0.1",
       "resolved": 
"https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz";,
diff --git a/package.json b/package.json
index bcaec8d..d7d88df 100644
--- a/package.json
+++ b/package.json
@@ -71,6 +71,7 @@
     "@types/sinon": "4.1.2",
     "@types/webpack-node-externals": "1.6.0",
     "assets-webpack-plugin": "3.5.1",
+    "autoprefixer": "7.2.3",
     "bundlesize": "0.15.3",
     "clean-webpack-plugin": "0.1.17",
     "copy-webpack-plugin": "4.3.0",
@@ -91,6 +92,7 @@
     "mocha": "4.0.1",
     "nodemon": "1.13.2",
     "npm-run-all": "4.1.2",
+    "postcss-loader": "2.0.9",
     "prettier": "1.9.2",
     "sinon": "4.1.3",
     "style-loader": "0.19.1",
@@ -112,7 +114,7 @@
     },
     {
       "path": "dist/public/index.*.css",
-      "maxSize": "4.9KB"
+      "maxSize": "5KB"
     },
     {
       "path": "dist/public/runtime.*.js",
diff --git a/src/client/webpack.config.ts b/src/client/webpack.config.ts
index a70dd1d..e4cb45a 100644
--- a/src/client/webpack.config.ts
+++ b/src/client/webpack.config.ts
@@ -132,7 +132,10 @@
               hmr: false
             }
           },
-          use: { loader: "css-loader", options: { minimize: PRODUCTION } }
+          use: [
+            { loader: "css-loader", options: { minimize: PRODUCTION } },
+            "postcss-loader"
+          ]
         })
       },
       {

-- 
To view, visit https://gerrit.wikimedia.org/r/399436
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib144cd7de629fddefafb2bb99124ca0f6f9a5b3a
Gerrit-PatchSet: 1
Gerrit-Project: marvin
Gerrit-Branch: master
Gerrit-Owner: Niedzielski <[email protected]>
Gerrit-Reviewer: Sniedzielski <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to