From 1f3329da271b96f4c9e3b780f79a0c9a78f643be Mon Sep 17 00:00:00 2001 From: Marco Solazzi Date: Tue, 20 Mar 2018 19:04:33 +0900 Subject: [PATCH 1/3] add compression middleware when serving with --production flag --- build/gulp-tasks/serve.js | 4 +++ package.json | 1 + yarn.lock | 52 ++++++++++++++++++++++++++++++--------- 3 files changed, 46 insertions(+), 11 deletions(-) diff --git a/build/gulp-tasks/serve.js b/build/gulp-tasks/serve.js index 0df5274..899f9cc 100644 --- a/build/gulp-tasks/serve.js +++ b/build/gulp-tasks/serve.js @@ -67,6 +67,10 @@ module.exports = (gulp, $, options) => { middleware: require('./lib/middlewares')(options, browserSync) }, conf || {}); + if (options.production) { + serverConf.middleware.unshift(require('compression')()); + } + browserSync.init(serverConf, (err, bs) => { if (err) { diff --git a/package.json b/package.json index 93f0357..702e21c 100644 --- a/package.json +++ b/package.json @@ -42,6 +42,7 @@ "babel-preset-stage-2": "6.24.1", "babel-runtime": "6.26.0", "browser-sync": "2.23.6", + "compression": "^1.7.2", "customizr": "https://github.com/doctyper/customizr/tarball/develop", "datauri": "1.1.0", "del": "3.0.0", diff --git a/yarn.lock b/yarn.lock index 5d6cea9..b5f9990 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1214,6 +1214,10 @@ bump-regex@^3.1.0: semver "^5.1.0" xtend "^4.0.1" +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + cached-constructors-x@^1.0.0, cached-constructors-x@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/cached-constructors-x/-/cached-constructors-x-1.0.2.tgz#d8a7b79b43fdcf13fd861bb763f38b627b0ccf91" @@ -1500,6 +1504,24 @@ component-inherit@0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/component-inherit/-/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143" +compressible@~2.0.13: + version "2.0.13" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.13.tgz#0d1020ab924b2fdb4d6279875c7d6daba6baa7a9" + dependencies: + mime-db ">= 1.33.0 < 2" + +compression@^1.7.2: + version "1.7.2" + resolved "http://registry.npmjs.org/compression/-/compression-1.7.2.tgz#aaffbcd6aaf854b44ebb280353d5ad1651f59a69" + dependencies: + accepts "~1.3.4" + bytes "3.0.0" + compressible "~2.0.13" + debug "2.6.9" + on-headers "~1.0.1" + safe-buffer "5.1.1" + vary "~1.1.2" + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -1734,6 +1756,12 @@ debug@2.6.8, debug@^2.2.0, debug@^2.6.8: dependencies: ms "2.0.0" +debug@2.6.9, debug@~2.6.4, debug@~2.6.6: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + dependencies: + ms "2.0.0" + debug@3.X, debug@^3.0.0, debug@^3.0.1, debug@^3.1.0, debug@~3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" @@ -1746,12 +1774,6 @@ debug@~2.2.0: dependencies: ms "0.7.1" -debug@~2.6.4, debug@~2.6.6: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - dependencies: - ms "2.0.0" - decamelize-keys@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" @@ -4823,14 +4845,14 @@ micromatch@2.3.11, micromatch@^2.1.5, micromatch@^2.3.11, micromatch@^2.3.7, mic parse-glob "^3.0.4" regex-cache "^0.4.2" +"mime-db@>= 1.33.0 < 2", mime-db@~1.33.0: + version "1.33.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" + mime-db@~1.29.0: version "1.29.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.29.0.tgz#48d26d235589651704ac5916ca06001914266878" -mime-db@~1.33.0: - version "1.33.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" - mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.16, mime-types@~2.1.7: version "2.1.16" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.16.tgz#2b858a52e5ecd516db897ac2be87487830698e23" @@ -5283,6 +5305,10 @@ on-finished@~2.3.0: dependencies: ee-first "1.1.1" +on-headers@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" + once@^1.3.0, once@^1.3.1, once@^1.3.2, once@^1.3.3, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -6310,7 +6336,7 @@ rxjs@^5.5.2: dependencies: symbol-observable "1.0.1" -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" @@ -7512,6 +7538,10 @@ value-or-function@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813" +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + verror@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" From b60ed95ed8a83cd97a78d40ad9ea2fc4f237a96d Mon Sep 17 00:00:00 2001 From: Marco Solazzi Date: Tue, 20 Mar 2018 19:12:05 +0900 Subject: [PATCH 2/3] version bump --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 702e21c..ec6bcc2 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "wok", "description": "A Static Website Boilerplate", - "version": "6.0.1", + "version": "6.1.0", "license": "MIT", "repository": { "type": "git", From 8d9e9dcb7a35a5bdd9cf19366920fdaf8d9d4d73 Mon Sep 17 00:00:00 2001 From: Marco Solazzi Date: Tue, 20 Mar 2018 19:14:20 +0900 Subject: [PATCH 3/3] documentation --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fc351d5..c12b516 100644 --- a/README.md +++ b/README.md @@ -142,6 +142,7 @@ When paired with Phing or other deployment systems, remember to set `buildOnly` ### Other Gulp tasks * `dev`: one time development build (also runs as default task) +* `server`: runs a local static server in `public` folder. Use flag `--production` to enable gzip compression * `lint`: runs both JavaScript and style linters * `bump`: bumps semver version of `package.json` file.