{"action":"created","issue":{"url":"https://api.github.com/repos/hanselke/kaizen/issues/7","repository_url":"https://api.github.com/repos/hanselke/kaizen","labels_url":"https://api.github.com/repos/hanselke/kaizen/issues/7/labels{/name}","comments_url":"https://api.github.com/repos/hanselke/kaizen/issues/7/comments","events_url":"https://api.github.com/repos/hanselke/kaizen/issues/7/events","html_url":"https://github.com/hanselke/kaizen/pull/7","id":229368530,"number":7,"title":"[Doppins] Upgrade dependency express to 4.16.1","user":{"login":"doppins-bot","id":13711356,"avatar_url":"https://avatars0.githubusercontent.com/u/13711356?v=4","gravatar_id":"","url":"https://api.github.com/users/doppins-bot","html_url":"https://github.com/doppins-bot","followers_url":"https://api.github.com/users/doppins-bot/followers","following_url":"https://api.github.com/users/doppins-bot/following{/other_user}","gists_url":"https://api.github.com/users/doppins-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/doppins-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/doppins-bot/subscriptions","organizations_url":"https://api.github.com/users/doppins-bot/orgs","repos_url":"https://api.github.com/users/doppins-bot/repos","events_url":"https://api.github.com/users/doppins-bot/events{/privacy}","received_events_url":"https://api.github.com/users/doppins-bot/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2017-05-17T14:18:42Z","updated_at":"2017-09-29T20:39:26Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/hanselke/kaizen/pulls/7","html_url":"https://github.com/hanselke/kaizen/pull/7","diff_url":"https://github.com/hanselke/kaizen/pull/7.diff","patch_url":"https://github.com/hanselke/kaizen/pull/7.patch"},"body":"Hi!\n\nA new version was just released of `express`, so [Doppins](https://doppins.com)\nhas upgraded your project's dependency ranges.\n\nMake sure that it doesn't break anything, and happy merging! :shipit:\n\n---\n### Upgraded express from `3.2.6` to `4.15.3`\n\n#### Changelog:\n\n#### Version 4.15.3\n  * Fix error when `res.set` cannot add charset to `Content-Type`\r\n  * deps: debug@2.6.7\r\n    - Fix `DEBUG_MAX_ARRAY_LENGTH`\r\n    - deps: ms@2.0.0\r\n  * deps: finalhandler@~1.0.3\r\n    - Fix missing `</html>` in HTML document\r\n    - deps: debug@2.6.7\r\n  * deps: proxy-addr@~1.1.4\r\n    - deps: ipaddr.js@1.3.0\r\n  * deps: send@0.15.3\r\n    - deps: debug@2.6.7\r\n    - deps: ms@2.0.0\r\n  * deps: serve-static@1.12.3\r\n    - deps: send@0.15.3\r\n  * deps: type-is@~1.6.15\r\n    - deps: mime-types@~2.1.15\r\n  * deps: vary@~1.1.1\r\n    - perf: hoist regular expression\n\n#### Version 4.15.2\n  * deps: qs@6.4.0\r\n    - Fix regression parsing keys starting with `[`\n\n#### Version 4.15.1\n  * deps: send@0.15.1\r\n    - Fix issue when `Date.parse` does not return `NaN` on invalid date\r\n    - Fix strict violation in broken environments\r\n  * deps: serve-static@1.12.1\r\n    - Fix issue when `Date.parse` does not return `NaN` on invalid date\r\n    - deps: send@0.15.1\n\n#### Version 5.0.0-alpha.5\nThis is the fifth Express 5.0 alpha release, based off 4.15.2 and includes\r\nchanges from 5.0.0-alpha.4.\n\n#### Version 5.0.0-alpha.4\nThis is the fourth Express 5.0 alpha release, based off 4.15.0 and includes\nchanges from 5.0.0-alpha.3.\n- remove:\n  - Remove Express 3.x middleware error stubs\n- deps: router@~1.3.0\n  - Add `next(\"router\")` to exit from router\n  - Fix case where `router.use` skipped requests routes did not\n  - Skip routing when `req.url` is not set\n  - Use `%o` in path debug to tell types apart\n  - deps: debug@2.6.1\n  - deps: setprototypeof@1.0.3\n  - perf: add fast match path for `*` route\n\n\n#### Version 4.15.0\n- Add debug message when loading view engine\n- Add `next(\"router\")` to exit from router\n- Fix case where `router.use` skipped requests routes did not\n- Remove usage of `res._headers` private field\n  - Improves compatibility with Node.js 8 nightly\n- Skip routing when `req.url` is not set\n- Use `%o` in path debug to tell types apart\n- Use `Object.create` to setup request & response prototypes\n- Use `setprototypeof` module to replace `__proto__` setting\n- Use `statuses` instead of `http` module for status messages\n- deps: debug@2.6.1\n  - Allow colors in workers\n  - Deprecated `DEBUG_FD` environment variable set to `3` or higher\n  - Fix error when running under React Native\n  - Use same color for same namespace\n  - deps: ms@0.7.2\n- deps: etag@~1.8.0\n  - Use SHA1 instead of MD5 for ETag hashing\n  - Works with FIPS 140-2 OpenSSL configuration\n- deps: finalhandler@~1.0.0\n  - Fix exception when `err` cannot be converted to a string\n  - Fully URL-encode the pathname in the 404\n  - Only include the pathname in the 404 message\n  - Send complete HTML document\n  - Set `Content-Security-Policy: default-src 'self'` header\n  - deps: debug@2.6.1\n- deps: fresh@0.5.0\n  - Fix false detection of `no-cache` request directive\n  - Fix incorrect result when `If-None-Match` has both `*` and ETags\n  - Fix weak `ETag` matching to match spec\n  - perf: delay reading header values until needed\n  - perf: enable strict mode\n  - perf: hoist regular expressions\n  - perf: remove duplicate conditional\n  - perf: remove unnecessary boolean coercions\n  - perf: skip checking modified time if ETag check failed\n  - perf: skip parsing `If-None-Match` when no `ETag` header\n  - perf: use `Date.parse` instead of `new Date`\n- deps: qs@6.3.1\n  - Fix array parsing from skipping empty values\n  - Fix compacting nested arrays\n- deps: send@0.15.0\n  - Fix false detection of `no-cache` request directive\n  - Fix incorrect result when `If-None-Match` has both `*` and ETags\n  - Fix weak `ETag` matching to match spec\n  - Remove usage of `res._headers` private field\n  - Support `If-Match` and `If-Unmodified-Since` headers\n  - Use `res.getHeaderNames()` when available\n  - Use `res.headersSent` when available\n  - deps: debug@2.6.1\n  - deps: etag@~1.8.0\n  - deps: fresh@0.5.0\n  - deps: http-errors@~1.6.1\n- deps: serve-static@1.12.0\n  - Fix false detection of `no-cache` request directive\n  - Fix incorrect result when `If-None-Match` has both `*` and ETags\n  - Fix weak `ETag` matching to match spec\n  - Remove usage of `res._headers` private field\n  - Send complete HTML document in redirect response\n  - Set default CSP header in redirect response\n  - Support `If-Match` and `If-Unmodified-Since` headers\n  - Use `res.getHeaderNames()` when available\n  - Use `res.headersSent` when available\n  - deps: send@0.15.0\n- perf: add fast match path for `*` route\n- perf: improve `req.ips` performance\n\n\n#### Version 5.0.0-alpha.3\nThis is the third Express 5.0 alpha release, based off 4.14.1 and includes\nchanges from 5.0.0-alpha.2.\n- remove:\n  - `res.json(status, obj)` signature - use `res.status(status).json(obj)`\n  - `res.jsonp(status, obj)` signature - use `res.status(status).jsonp(obj)`\n  - `res.vary()` (no arguments) -- provide a field name as an argument\n- deps: array-flatten@2.1.1\n- deps: path-is-absolute@1.0.1\n- deps: router@~1.1.5\n  - deps: array-flatten@2.0.1\n  - deps: methods@~1.1.2\n  - deps: parseurl@~1.3.1\n  - deps: setprototypeof@1.0.2\n\n\n#### Version 4.14.1\n- deps: content-disposition@0.5.2\n- deps: finalhandler@0.5.1\n  - Fix exception when `err.headers` is not an object\n  - deps: statuses@~1.3.1\n  - perf: hoist regular expressions\n  - perf: remove duplicate validation path\n- deps: proxy-addr@~1.1.3\n  - deps: ipaddr.js@1.2.0\n- deps: send@0.14.2\n  - deps: http-errors@~1.5.1\n  - deps: ms@0.7.2\n  - deps: statuses@~1.3.1\n- deps: serve-static@~1.11.2\n  - deps: send@0.14.2\n- deps: type-is@~1.6.14\n  - deps: mime-types@~2.1.13\n\n\n#### Version 4.14.0\n- Add `acceptRanges` option to `res.sendFile`/`res.sendfile`\n- Add `cacheControl` option to `res.sendFile`/`res.sendfile`\n- Add `options` argument to `req.range`\n  - Includes the `combine` option\n- Encode URL in `res.location`/`res.redirect` if not already encoded\n- Fix some redirect handling in `res.sendFile`/`res.sendfile`\n- Fix Windows absolute path check using forward slashes\n- Improve error with invalid arguments to `req.get()`\n- Improve performance for `res.json`/`res.jsonp` in most cases\n- Improve `Range` header handling in `res.sendFile`/`res.sendfile`\n- deps: accepts@~1.3.3\n  - Fix including type extensions in parameters in `Accept` parsing\n  - Fix parsing `Accept` parameters with quoted equals\n  - Fix parsing `Accept` parameters with quoted semicolons\n  - Many performance improvments\n  - deps: mime-types@~2.1.11\n  - deps: negotiator@0.6.1\n- deps: content-type@~1.0.2\n  - perf: enable strict mode\n- deps: cookie@0.3.1\n  - Add `sameSite` option\n  - Fix cookie `Max-Age` to never be a floating point number\n  - Improve error message when `encode` is not a function\n  - Improve error message when `expires` is not a `Date`\n  - Throw better error for invalid argument to parse\n  - Throw on invalid values provided to `serialize`\n  - perf: enable strict mode\n  - perf: hoist regular expression\n  - perf: use for loop in parse\n  - perf: use string concatination for serialization\n- deps: finalhandler@0.5.0\n  - Change invalid or non-numeric status code to 500\n  - Overwrite status message to match set status code\n  - Prefer `err.statusCode` if `err.status` is invalid\n  - Set response headers from `err.headers` object\n  - Use `statuses` instead of `http` module for status messages\n- deps: proxy-addr@~1.1.2\n  - Fix accepting various invalid netmasks\n  - Fix IPv6-mapped IPv4 validation edge cases\n  - IPv4 netmasks must be contingous\n  - IPv6 addresses cannot be used as a netmask\n  - deps: ipaddr.js@1.1.1\n- deps: qs@6.2.0\n  - Add `decoder` option in `parse` function\n- deps: range-parser@~1.2.0\n  - Add `combine` option to combine overlapping ranges\n  - Fix incorrectly returning -1 when there is at least one valid range\n  - perf: remove internal function\n- deps: send@0.14.1\n  - Add `acceptRanges` option\n  - Add `cacheControl` option\n  - Attempt to combine multiple ranges into single range\n  - Correctly inherit from `Stream` class\n  - Fix `Content-Range` header in 416 responses when using `start`/`end` options\n  - Fix `Content-Range` header missing from default 416 responses\n  - Fix redirect error when `path` contains raw non-URL characters\n  - Fix redirect when `path` starts with multiple forward slashes\n  - Ignore non-byte `Range` headers\n  - deps: http-errors@~1.5.0\n  - deps: range-parser@~1.2.0\n  - deps: statuses@~1.3.0\n  - perf: remove argument reassignment\n- deps: serve-static@~1.11.1\n  - Add `acceptRanges` option\n  - Add `cacheControl` option\n  - Attempt to combine multiple ranges into single range\n  - Fix redirect error when `req.url` contains raw non-URL characters\n  - Ignore non-byte `Range` headers\n  - Use status code 301 for redirects\n  - deps: send@0.14.1\n- deps: type-is@~1.6.13\n  - Fix type error when given invalid type to match against\n  - deps: mime-types@~2.1.11\n- deps: vary@~1.1.0\n  - Only accept valid field names in the `field` argument\n- perf: use strict equality when possible\n\n\n#### Version 4.13.4\n- deps: content-disposition@0.5.1\n  - perf: enable strict mode\n- deps: cookie@0.1.5\n  - Throw on invalid values provided to `serialize`\n- deps: depd@~1.1.0\n  - Support web browser loading\n  - perf: enable strict mode\n- deps: escape-html@~1.0.3\n  - perf: enable strict mode\n  - perf: optimize string replacement\n  - perf: use faster string coercion\n- deps: finalhandler@0.4.1\n  - deps: escape-html@~1.0.3\n- deps: merge-descriptors@1.0.1\n  - perf: enable strict mode\n- deps: methods@~1.1.2\n  - perf: enable strict mode\n- deps: parseurl@~1.3.1\n  - perf: enable strict mode\n- deps: proxy-addr@~1.0.10\n  - deps: ipaddr.js@1.0.5\n  - perf: enable strict mode\n- deps: range-parser@~1.0.3\n  - perf: enable strict mode\n- deps: send@0.13.1\n  - deps: depd@~1.1.0\n  - deps: destroy@~1.0.4\n  - deps: escape-html@~1.0.3\n  - deps: range-parser@~1.0.3\n- deps: serve-static@~1.10.2\n  - deps: escape-html@~1.0.3\n  - deps: parseurl@~1.3.0\n  - deps: send@0.13.1\n\n\n#### Version 4.13.3\n- Fix infinite loop condition using `mergeParams: true`\n- Fix inner numeric indices incorrectly altering parent `req.params`\n\n\n#### Version 4.13.2\n- deps: accepts@~1.2.12\n  - deps: mime-types@~2.1.4\n- deps: array-flatten@1.1.1\n  - perf: enable strict mode\n- deps: path-to-regexp@0.1.7\n  - Fix regression with escaped round brackets and matching groups\n- deps: type-is@~1.6.6\n  - deps: mime-types@~2.1.4\n\n\n#### Version 3.21.2\n- deps: connect@2.30.2\n  - deps: body-parser@~1.13.3\n  - deps: compression@~1.5.2\n  - deps: errorhandler@~1.4.2\n  - deps: method-override@~2.3.5\n  - deps: serve-index@~1.7.2\n  - deps: type-is@~1.6.6\n  - deps: vhost@~3.0.1\n- deps: vary@~1.0.1\n  - Fix setting empty header from empty `field`\n  - perf: enable strict mode\n  - perf: remove argument reassignments\n\n\n#### Version 5.0.0-alpha.2\nThis is the second Express 5.0 alpha release, based off 4.13.1 and includes\nchanges from 5.0.0-alpha.1.\n- remove:\n  - `app.param(fn)`\n  - `req.param()` -- use `req.params`, `req.body`, or `req.query` instead\n- change:\n  - `res.render` callback is always async, even for sync view engines\n  - The leading `:` character in `name` for `app.param(name, fn)` is no longer removed\n  - Use `router` module for routing\n  - Use `path-is-absolute` module for absolute path detection\n\n\n#### Version 4.13.1\n- deps: accepts@~1.2.10\n  - deps: mime-types@~2.1.2\n- deps: qs@4.0.0\n  - Fix dropping parameters like `hasOwnProperty`\n  - Fix various parsing edge cases\n- deps: type-is@~1.6.4\n  - deps: mime-types@~2.1.2\n  - perf: enable strict mode\n  - perf: remove argument reassignment\n\n\n#### Version 3.21.1\n- deps: basic-auth@~1.0.3\n- deps: connect@2.30.1\n  - deps: body-parser@~1.13.2\n  - deps: compression@~1.5.1\n  - deps: errorhandler@~1.4.1\n  - deps: morgan@~1.6.1\n  - deps: pause@0.1.0\n  - deps: qs@4.0.0\n  - deps: serve-index@~1.7.1\n  - deps: type-is@~1.6.4\n\n\n#### Version 4.13.0\n- Add settings to debug output\n- Fix `res.format` error when only `default` provided\n- Fix issue where `next('route')` in `app.param` would incorrectly skip values\n- Fix hiding platform issues with `decodeURIComponent`\n  - Only `URIError`s are a 400\n- Fix using `*` before params in routes\n- Fix using capture groups before params in routes\n- Simplify `res.cookie` to call `res.append`\n- Use `array-flatten` module for flattening arrays\n- deps: accepts@~1.2.9\n  - deps: mime-types@~2.1.1\n  - perf: avoid argument reassignment & argument slice\n  - perf: avoid negotiator recursive construction\n  - perf: enable strict mode\n  - perf: remove unnecessary bitwise operator\n- deps: cookie@0.1.3\n  - perf: deduce the scope of try-catch deopt\n  - perf: remove argument reassignments\n- deps: escape-html@1.0.2\n- deps: etag@~1.7.0\n  - Always include entity length in ETags for hash length extensions\n  - Generate non-Stats ETags using MD5 only (no longer CRC32)\n  - Improve stat performance by removing hashing\n  - Improve support for JXcore\n  - Remove base64 padding in ETags to shorten\n  - Support \"fake\" stats objects in environments without fs\n  - Use MD5 instead of MD4 in weak ETags over 1KB\n- deps: finalhandler@0.4.0\n  - Fix a false-positive when unpiping in Node.js 0.8\n  - Support `statusCode` property on `Error` objects\n  - Use `unpipe` module for unpiping requests\n  - deps: escape-html@1.0.2\n  - deps: on-finished@~2.3.0\n  - perf: enable strict mode\n  - perf: remove argument reassignment\n- deps: fresh@0.3.0\n  - Add weak `ETag` matching support\n- deps: on-finished@~2.3.0\n  - Add defined behavior for HTTP `CONNECT` requests\n  - Add defined behavior for HTTP `Upgrade` requests\n  - deps: ee-first@1.1.1\n- deps: path-to-regexp@0.1.6\n- deps: send@0.13.0\n  - Allow Node.js HTTP server to set `Date` response header\n  - Fix incorrectly removing `Content-Location` on 304 response\n  - Improve the default redirect response headers\n  - Send appropriate headers on default error response\n  - Use `http-errors` for standard emitted errors\n  - Use `statuses` instead of `http` module for status messages\n  - deps: escape-html@1.0.2\n  - deps: etag@~1.7.0\n  - deps: fresh@0.3.0\n  - deps: on-finished@~2.3.0\n  - perf: enable strict mode\n  - perf: remove unnecessary array allocations\n- deps: serve-static@~1.10.0\n  - Add `fallthrough` option\n  - Fix reading options from options prototype\n  - Improve the default redirect response headers\n  - Malformed URLs now `next()` instead of 400\n  - deps: escape-html@1.0.2\n  - deps: send@0.13.0\n  - perf: enable strict mode\n  - perf: remove argument reassignment\n- deps: type-is@~1.6.3\n  - deps: mime-types@~2.1.1\n  - perf: reduce try block size\n  - perf: remove bitwise operations\n- perf: enable strict mode\n- perf: isolate `app.render` try block\n- perf: remove argument reassignments in application\n- perf: remove argument reassignments in request prototype\n- perf: remove argument reassignments in response prototype\n- perf: remove argument reassignments in routing\n- perf: remove argument reassignments in `View`\n- perf: skip attempting to decode zero length string\n- perf: use saved reference to `http.STATUS_CODES`\n\n\n#### Version 3.21.0\n- deps: basic-auth@1.0.2\n  - perf: enable strict mode\n  - perf: hoist regular expression\n  - perf: parse with regular expressions\n  - perf: remove argument reassignment\n- deps: connect@2.30.0\n  - deps: body-parser@~1.13.1\n  - deps: bytes@2.1.0\n  - deps: compression@~1.5.0\n  - deps: cookie@0.1.3\n  - deps: cookie-parser@~1.3.5\n  - deps: csurf@~1.8.3\n  - deps: errorhandler@~1.4.0\n  - deps: express-session@~1.11.3\n  - deps: finalhandler@0.4.0\n  - deps: fresh@0.3.0\n  - deps: morgan@~1.6.0\n  - deps: serve-favicon@~2.3.0\n  - deps: serve-index@~1.7.0\n  - deps: serve-static@~1.10.0\n  - deps: type-is@~1.6.3\n- deps: cookie@0.1.3\n  - perf: deduce the scope of try-catch deopt\n  - perf: remove argument reassignments\n- deps: escape-html@1.0.2\n- deps: etag@~1.7.0\n  - Always include entity length in ETags for hash length extensions\n  - Generate non-Stats ETags using MD5 only (no longer CRC32)\n  - Improve stat performance by removing hashing\n  - Improve support for JXcore\n  - Remove base64 padding in ETags to shorten\n  - Support \"fake\" stats objects in environments without fs\n  - Use MD5 instead of MD4 in weak ETags over 1KB\n- deps: fresh@0.3.0\n  - Add weak `ETag` matching support\n- deps: mkdirp@0.5.1\n  - Work in global strict mode\n- deps: send@0.13.0\n  - Allow Node.js HTTP server to set `Date` response header\n  - Fix incorrectly removing `Content-Location` on 304 response\n  - Improve the default redirect response headers\n  - Send appropriate headers on default error response\n  - Use `http-errors` for standard emitted errors\n  - Use `statuses` instead of `http` module for status messages\n  - deps: escape-html@1.0.2\n  - deps: etag@~1.7.0\n  - deps: fresh@0.3.0\n  - deps: on-finished@~2.3.0\n  - perf: enable strict mode\n  - perf: remove unnecessary array allocations\n\n\n#### Version 4.12.4\n- deps: accepts@~1.2.7\n  - deps: mime-types@~2.0.11\n  - deps: negotiator@0.5.3\n- deps: debug@~2.2.0\n  - deps: ms@0.7.1\n- deps: depd@~1.0.1\n- deps: etag@~1.6.0\n  - Improve support for JXcore\n  - Support \"fake\" stats objects in environments without `fs`\n- deps: finalhandler@0.3.6\n  - deps: debug@~2.2.0\n  - deps: on-finished@~2.2.1\n- deps: on-finished@~2.2.1\n  - Fix `isFinished(req)` when data buffered\n- deps: proxy-addr@~1.0.8\n  - deps: ipaddr.js@1.0.1\n- deps: qs@2.4.2\n  - Fix allowing parameters like `constructor`\n- deps: send@0.12.3\n  - deps: debug@~2.2.0\n  - deps: depd@~1.0.1\n  - deps: etag@~1.6.0\n  - deps: ms@0.7.1\n  - deps: on-finished@~2.2.1\n- deps: serve-static@~1.9.3\n  - deps: send@0.12.3\n- deps: type-is@~1.6.2\n  - deps: mime-types@~2.0.11\n\n\n#### Version 3.20.3\n- deps: connect@2.29.2\n  - deps: body-parser@~1.12.4\n  - deps: compression@~1.4.4\n  - deps: connect-timeout@~1.6.2\n  - deps: debug@~2.2.0\n  - deps: depd@~1.0.1\n  - deps: errorhandler@~1.3.6\n  - deps: finalhandler@0.3.6\n  - deps: method-override@~2.3.3\n  - deps: morgan@~1.5.3\n  - deps: qs@2.4.2\n  - deps: response-time@~2.3.1\n  - deps: serve-favicon@~2.2.1\n  - deps: serve-index@~1.6.4\n  - deps: serve-static@~1.9.3\n  - deps: type-is@~1.6.2\n- deps: debug@~2.2.0\n  - deps: ms@0.7.1\n- deps: depd@~1.0.1\n- deps: proxy-addr@~1.0.8\n  - deps: ipaddr.js@1.0.1\n- deps: send@0.12.3\n  - deps: debug@~2.2.0\n  - deps: depd@~1.0.1\n  - deps: etag@~1.6.0\n  - deps: ms@0.7.1\n  - deps: on-finished@~2.2.1\n\n\n#### Version 4.12.3\n- deps: accepts@~1.2.5\n  - deps: mime-types@~2.0.10\n- deps: debug@~2.1.3\n  - Fix high intensity foreground color for bold\n  - deps: ms@0.7.0\n- deps: finalhandler@0.3.4\n  - deps: debug@~2.1.3\n- deps: proxy-addr@~1.0.7\n  - deps: ipaddr.js@0.1.9\n- deps: qs@2.4.1\n  - Fix error when parameter `hasOwnProperty` is present\n- deps: send@0.12.2\n  - Throw errors early for invalid `extensions` or `index` options\n  - deps: debug@~2.1.3\n- deps: serve-static@~1.9.2\n  - deps: send@0.12.2\n- deps: type-is@~1.6.1\n  - deps: mime-types@~2.0.10\n\n\n#### Version 3.20.2\n- deps: connect@2.29.1\n  - deps: body-parser@~1.12.2\n  - deps: compression@~1.4.3\n  - deps: connect-timeout@~1.6.1\n  - deps: debug@~2.1.3\n  - deps: errorhandler@~1.3.5\n  - deps: express-session@~1.10.4\n  - deps: finalhandler@0.3.4\n  - deps: method-override@~2.3.2\n  - deps: morgan@~1.5.2\n  - deps: qs@2.4.1\n  - deps: serve-index@~1.6.3\n  - deps: serve-static@~1.9.2\n  - deps: type-is@~1.6.1\n- deps: debug@~2.1.3\n  - Fix high intensity foreground color for bold\n  - deps: ms@0.7.0\n- deps: merge-descriptors@1.0.0\n- deps: proxy-addr@~1.0.7\n  - deps: ipaddr.js@0.1.9\n- deps: send@0.12.2\n  - Throw errors early for invalid `extensions` or `index` options\n  - deps: debug@~2.1.3\n\n\n#### Version 4.12.2\n- Fix regression where `\"Request aborted\"` is logged using `res.sendFile`\n\n\n#### Version 4.12.1\n- Fix constructing application with non-configurable prototype properties\n- Fix `ECONNRESET` errors from `res.sendFile` usage\n- Fix `req.host` when using \"trust proxy\" hops count\n- Fix `req.protocol`/`req.secure` when using \"trust proxy\" hops count\n- Fix wrong `code` on aborted connections from `res.sendFile`\n- deps: merge-descriptors@1.0.0\n\n\n#### Version 3.20.1\n- Fix `req.host` when using \"trust proxy\" hops count\n- Fix `req.protocol`/`req.secure` when using \"trust proxy\" hops count\n\n\n#### Version 4.12.0\n- Fix `\"trust proxy\"` setting to inherit when app is mounted\n- Generate `ETag`s for all request responses\n  - No longer restricted to only responses for `GET` and `HEAD` requests\n- Use `content-type` to parse `Content-Type` headers\n- deps: accepts@~1.2.4\n  - Fix preference sorting to be stable for long acceptable lists\n  - deps: mime-types@~2.0.9\n  - deps: negotiator@0.5.1\n- deps: cookie-signature@1.0.6\n- deps: send@0.12.1\n  - Always read the stat size from the file\n  - Fix mutating passed-in `options`\n  - deps: mime@1.3.4\n- deps: serve-static@~1.9.1\n  - deps: send@0.12.1\n- deps: type-is@~1.6.0\n  - fix argument reassignment\n  - fix false-positives in `hasBody` `Transfer-Encoding` check\n  - support wildcard for both type and subtype (`*/*`)\n  - deps: mime-types@~2.0.9\n\n\n#### Version 3.20.0\n- Fix `\"trust proxy\"` setting to inherit when app is mounted\n- Generate `ETag`s for all request responses\n  - No longer restricted to only responses for `GET` and `HEAD` requests\n- Use `content-type` to parse `Content-Type` headers\n- deps: connect@2.29.0\n  - Use `content-type` to parse `Content-Type` headers\n  - deps: body-parser@~1.12.0\n  - deps: compression@~1.4.1\n  - deps: connect-timeout@~1.6.0\n  - deps: cookie-parser@~1.3.4\n  - deps: cookie-signature@1.0.6\n  - deps: csurf@~1.7.0\n  - deps: errorhandler@~1.3.4\n  - deps: express-session@~1.10.3\n  - deps: http-errors@~1.3.1\n  - deps: response-time@~2.3.0\n  - deps: serve-index@~1.6.2\n  - deps: serve-static@~1.9.1\n  - deps: type-is@~1.6.0\n- deps: cookie-signature@1.0.6\n- deps: send@0.12.1\n  - Always read the stat size from the file\n  - Fix mutating passed-in `options`\n  - deps: mime@1.3.4\n\n\n#### Version 4.11.2\n- Fix `res.redirect` double-calling `res.end` for `HEAD` requests\n- deps: accepts@~1.2.3\n  - deps: mime-types@~2.0.8\n- deps: proxy-addr@~1.0.6\n  - deps: ipaddr.js@0.1.8\n- deps: type-is@~1.5.6\n  - deps: mime-types@~2.0.8\n\n\n#### Version 3.19.2\n- deps: connect@2.28.3\n  - deps: compression@~1.3.1\n  - deps: csurf@~1.6.6\n  - deps: errorhandler@~1.3.3\n  - deps: express-session@~1.10.2\n  - deps: serve-index@~1.6.1\n  - deps: type-is@~1.5.6\n- deps: proxy-addr@~1.0.6\n  - deps: ipaddr.js@0.1.8\n\n\n#### Version 4.11.1\n- deps: send@0.11.1\n  - Fix root path disclosure\n- deps: serve-static@~1.8.1\n  - Fix redirect loop in Node.js 0.11.14\n  - Fix root path disclosure\n  - deps: send@0.11.1\n\n\n#### Version 3.19.1\n- deps: connect@2.28.2\n  - deps: body-parser@~1.10.2\n  - deps: serve-static@~1.8.1\n- deps: send@0.11.1\n  - Fix root path disclosure\n\n\n#### Version 4.11.0\n- Add `res.append(field, val)` to append headers\n- Deprecate leading `:` in `name` for `app.param(name, fn)`\n- Deprecate `req.param()` -- use `req.params`, `req.body`, or `req.query` instead\n- Deprecate `app.param(fn)`\n- Fix `OPTIONS` responses to include the `HEAD` method properly\n- Fix `res.sendFile` not always detecting aborted connection\n- Match routes iteratively to prevent stack overflows\n- deps: accepts@~1.2.2\n  - deps: mime-types@~2.0.7\n  - deps: negotiator@0.5.0\n- deps: send@0.11.0\n  - deps: debug@~2.1.1\n  - deps: etag@~1.5.1\n  - deps: ms@0.7.0\n  - deps: on-finished@~2.2.0\n- deps: serve-static@~1.8.0\n  - deps: send@0.11.0\n\n\n#### Version 4.10.8\n- Fix crash from error within `OPTIONS` response handler\n- deps: proxy-addr@~1.0.5\n  - deps: ipaddr.js@0.1.6\n\n\n#### Version 3.19.0\n- Fix `OPTIONS` responses to include the `HEAD` method property\n- Use `readline` for prompt in `express(1)`\n- deps: commander@2.6.0\n- deps: connect@2.28.1\n  - deps: body-parser@~1.10.1\n  - deps: compression@~1.3.0\n  - deps: connect-timeout@~1.5.0\n  - deps: csurf@~1.6.4\n  - deps: debug@~2.1.1\n  - deps: errorhandler@~1.3.2\n  - deps: express-session@~1.10.1\n  - deps: finalhandler@0.3.3\n  - deps: method-override@~2.3.1\n  - deps: morgan@~1.5.1\n  - deps: serve-favicon@~2.2.0\n  - deps: serve-index@~1.6.0\n  - deps: serve-static@~1.8.0\n  - deps: type-is@~1.5.5\n- deps: debug@~2.1.1\n- deps: methods@~1.1.1\n- deps: proxy-addr@~1.0.5\n  - deps: ipaddr.js@0.1.6\n- deps: send@0.11.0\n  - deps: debug@~2.1.1\n  - deps: etag@~1.5.1\n  - deps: ms@0.7.0\n  - deps: on-finished@~2.2.0\n\n\n#### Version 4.10.7\n- Fix `Allow` header for `OPTIONS` to not contain duplicate methods\n- Fix incorrect \"Request aborted\" for `res.sendFile` when `HEAD` or 304\n- deps: debug@~2.1.1\n- deps: finalhandler@0.3.3\n  - deps: debug@~2.1.1\n  - deps: on-finished@~2.2.0\n- deps: methods@~1.1.1\n- deps: on-finished@~2.2.0\n- deps: serve-static@~1.7.2\n  - Fix potential open redirect when mounted at root\n- deps: type-is@~1.5.5\n  - deps: mime-types@~2.0.7\n\n\n#### Version 4.10.6\n- Fix exception in `req.fresh`/`req.stale` without response headers\n\n\n#### Version 3.18.6\n- Fix exception in `req.fresh`/`req.stale` without response headers\n\n\n#### Version 3.18.5\n- deps: connect@2.27.6\n  - deps: compression@~1.2.2\n  - deps: express-session@~1.9.3\n  - deps: http-errors@~1.2.8\n  - deps: serve-index@~1.5.3\n  - deps: type-is@~1.5.4\n\n\n#### Version 4.10.5\n- Fix `res.send` double-calling `res.end` for `HEAD` requests\n- deps: accepts@~1.1.4\n  - deps: mime-types@~2.0.4\n- deps: type-is@~1.5.4\n  - deps: mime-types@~2.0.4\n\n\n#### Version 4.10.4\n- Fix `res.sendfile` logging standard write errors\n\n\n#### Version 4.10.3\n- Fix `res.sendFile` logging standard write errors\n- deps: etag@~1.5.1\n- deps: proxy-addr@~1.0.4\n  - deps: ipaddr.js@0.1.5\n- deps: qs@2.3.3\n  - Fix `arrayLimit` behavior\n\n\n#### Version 3.18.4\n- deps: connect@2.27.4\n  - deps: body-parser@~1.9.3\n  - deps: compression@~1.2.1\n  - deps: errorhandler@~1.2.3\n  - deps: express-session@~1.9.2\n  - deps: qs@2.3.3\n  - deps: serve-favicon@~2.1.7\n  - deps: serve-static@~1.5.1\n  - deps: type-is@~1.5.3\n- deps: etag@~1.5.1\n- deps: proxy-addr@~1.0.4\n  - deps: ipaddr.js@0.1.5\n\n\n#### Version 4.10.2\n- Correctly invoke async router callback asynchronously\n- deps: accepts@~1.1.3\n  - deps: mime-types@~2.0.3\n- deps: type-is@~1.5.3\n  - deps: mime-types@~2.0.3\n\n\n#### Version 3.18.3\n- deps: connect@2.27.3\n  - Correctly invoke async callback asynchronously\n  - deps: csurf@~1.6.3\n\n\n#### Version 5.0.0-alpha.1\n- remove:\n  - `app.del` - use `app.delete`\n  - `req.acceptsCharset` - use `req.acceptsCharsets`\n  - `req.acceptsEncoding` - use `req.acceptsEncodings`\n  - `req.acceptsLanguage` - use `req.acceptsLanguages`\n  - `res.json(obj, status)` signature - use `res.json(status, obj)`\n  - `res.jsonp(obj, status)` signature - use `res.jsonp(status, obj)`\n  - `res.send(body, status)` signature - use `res.send(status, body)`\n  - `res.send(status)` signature - use `res.sendStatus(status)`\n  - `res.sendfile` - use `res.sendFile` instead\n  - `express.query` middleware\n- change:\n  - `req.host` now returns host (`hostname:port`) - use `req.hostname` for only hostname\n  - `req.query` is now a getter instead of a plain property\n- add:\n  - `app.router` is a reference to the base router\n\n\n#### Version 4.10.1\n- Fix handling of URLs containing `://` in the path\n- deps: qs@2.3.2\n  - Fix parsing of mixed objects and values\n\n\n#### Version 3.18.2\n- deps: connect@2.27.2\n  - Fix handling of URLs containing `://` in the path\n  - deps: body-parser@~1.9.2\n  - deps: qs@2.3.2\n\n\n#### Version 4.10.0\n- Add support for `app.set('views', array)`\n  - Views are looked up in sequence in array of directories\n- Fix `res.send(status)` to mention `res.sendStatus(status)`\n- Fix handling of invalid empty URLs\n- Use `content-disposition` module for `res.attachment`/`res.download`\n  - Sends standards-compliant `Content-Disposition` header\n  - Full Unicode support\n- Use `path.resolve` in view lookup\n- deps: debug@~2.1.0\n  - Implement `DEBUG_FD` env variable support\n- deps: depd@~1.0.0\n- deps: etag@~1.5.0\n  - Improve string performance\n  - Slightly improve speed for weak ETags over 1KB\n- deps: finalhandler@0.3.2\n  - Terminate in progress response only on error\n  - Use `on-finished` to determine request status\n  - deps: debug@~2.1.0\n  - deps: on-finished@~2.1.1\n- deps: on-finished@~2.1.1\n  - Fix handling of pipelined requests\n- deps: qs@2.3.0\n  - Fix parsing of mixed implicit and explicit arrays\n- deps: send@0.10.1\n  - deps: debug@~2.1.0\n  - deps: depd@~1.0.0\n  - deps: etag@~1.5.0\n  - deps: on-finished@~2.1.1\n- deps: serve-static@~1.7.1\n  - deps: send@0.10.1\n\n\n#### Version 3.18.1\n- Fix internal `utils.merge` deprecation warnings\n- deps: connect@2.27.1\n  - deps: body-parser@~1.9.1\n  - deps: express-session@~1.9.1\n  - deps: finalhandler@0.3.2\n  - deps: morgan@~1.4.1\n  - deps: qs@2.3.0\n  - deps: serve-static@~1.7.1\n- deps: send@0.10.1\n  - deps: on-finished@~2.1.1\n\n\n#### Version 3.18.0\n- Use `content-disposition` module for `res.attachment`/`res.download`\n  - Sends standards-compliant `Content-Disposition` header\n  - Full Unicode support\n- Use `etag` module to generate `ETag` headers\n- deps: connect@2.27.0\n  - Use `http-errors` module for creating errors\n  - Use `utils-merge` module for merging objects\n  - deps: body-parser@~1.9.0\n  - deps: compression@~1.2.0\n  - deps: connect-timeout@~1.4.0\n  - deps: debug@~2.1.0\n  - deps: depd@~1.0.0\n  - deps: express-session@~1.9.0\n  - deps: finalhandler@0.3.1\n  - deps: method-override@~2.3.0\n  - deps: morgan@~1.4.0\n  - deps: response-time@~2.2.0\n  - deps: serve-favicon@~2.1.6\n  - deps: serve-index@~1.5.0\n  - deps: serve-static@~1.7.0\n- deps: debug@~2.1.0\n  - Implement `DEBUG_FD` env variable support\n- deps: depd@~1.0.0\n- deps: send@0.10.0\n  - deps: debug@~2.1.0\n  - deps: depd@~1.0.0\n  - deps: etag@~1.5.0\n\n\n#### Version 4.9.8\n- Fix `res.redirect` body when redirect status specified\n- deps: accepts@~1.1.2\n  - Fix error when media type has invalid parameter\n  - deps: negotiator@0.4.9\n\n\n#### Version 3.17.8\n- deps: connect@2.26.6\n  - deps: compression@~1.1.2\n  - deps: csurf@~1.6.2\n  - deps: errorhandler@~1.2.2\n\n\n#### Version 4.9.7\n- Fix using same param name in array of paths\n\n\n#### Version 4.9.6\n- deps: accepts@~1.1.1\n  - deps: mime-types@~2.0.2\n  - deps: negotiator@0.4.8\n- deps: serve-static@~1.6.4\n  - Fix redirect loop when index file serving disabled\n- deps: type-is@~1.5.2\n  - deps: mime-types@~2.0.2\n\n\n#### Version 3.17.7\n- deps: connect@2.26.5\n  - Fix accepting non-object arguments to `logger`\n  - deps: serve-static@~1.6.4\n\n\n#### Version 3.17.6\n- deps: connect@2.26.4\n  - deps: morgan@~1.3.2\n  - deps: type-is@~1.5.2\n\n\n#### Version 4.9.5\n- deps: etag@~1.4.0\n- deps: proxy-addr@~1.0.3\n  - Use `forwarded` npm module\n- deps: send@0.9.3\n  - deps: etag@~1.4.0\n- deps: serve-static@~1.6.3\n  - deps: send@0.9.3\n\n\n#### Version 3.17.5\n- deps: connect@2.26.3\n  - deps: body-parser@~1.8.4\n  - deps: serve-favicon@~2.1.5\n  - deps: serve-static@~1.6.3\n- deps: proxy-addr@~1.0.3\n  - Use `forwarded` npm module\n- deps: send@0.9.3\n  - deps: etag@~1.4.0\n\n\n#### Version 4.9.4\n- deps: qs@2.2.4\n  - Fix issue with object keys starting with numbers truncated\n\n\n#### Version 3.17.4\n- deps: connect@2.26.2\n  - deps: body-parser@~1.8.3\n  - deps: qs@2.2.4\n\n\n#### Version 4.9.3\n- deps: proxy-addr@~1.0.2\n  - Fix a global leak when multiple subnets are trusted\n  - deps: ipaddr.js@0.1.3\n\n\n#### Version 3.17.3\n- deps: proxy-addr@~1.0.2\n  - Fix a global leak when multiple subnets are trusted\n  - deps: ipaddr.js@0.1.3\n\n\n#### Version 4.9.2\n- Fix regression for empty string `path` in `app.use`\n- Fix `router.use` to accept array of middleware without path\n- Improve error message for bad `app.use` arguments\n\n\n#### Version 4.9.1\n- Fix `app.use` to accept array of middleware without path\n- deps: depd@0.4.5\n- deps: etag@~1.3.1\n- deps: send@0.9.2\n  - deps: depd@0.4.5\n  - deps: etag@~1.3.1\n  - deps: range-parser@~1.0.2\n- deps: serve-static@~1.6.2\n  - deps: send@0.9.2\n\n\n#### Version 3.17.2\n- Use `crc` instead of `buffer-crc32` for speed\n- deps: connect@2.26.1\n  - deps: body-parser@~1.8.2\n  - deps: depd@0.4.5\n  - deps: express-session@~1.8.2\n  - deps: morgan@~1.3.1\n  - deps: serve-favicon@~2.1.3\n  - deps: serve-static@~1.6.2\n- deps: depd@0.4.5\n- deps: send@0.9.2\n  - deps: depd@0.4.5\n  - deps: etag@~1.3.1\n  - deps: range-parser@~1.0.2\n\n\n#### Version 4.9.0\n- Add `res.sendStatus`\n- Invoke callback for sendfile when client aborts\n  - Applies to `res.sendFile`, `res.sendfile`, and `res.download`\n  - `err` will be populated with request aborted error\n- Support IP address host in `req.subdomains`\n- Use `etag` to generate `ETag` headers\n- deps: accepts@~1.1.0\n  - update `mime-types`\n- deps: cookie-signature@1.0.5\n- deps: debug@~2.0.0\n- deps: finalhandler@0.2.0\n  - Set `X-Content-Type-Options: nosniff` header\n  - deps: debug@~2.0.0\n- deps: fresh@0.2.4\n- deps: media-typer@0.3.0\n  - Throw error when parameter format invalid on parse\n- deps: qs@2.2.3\n  - Fix issue where first empty value in array is discarded\n- deps: range-parser@~1.0.2\n- deps: send@0.9.1\n  - Add `lastModified` option\n  - Use `etag` to generate `ETag` header\n  - deps: debug@~2.0.0\n  - deps: fresh@0.2.4\n- deps: serve-static@~1.6.1\n  - Add `lastModified` option\n  - deps: send@0.9.1\n- deps: type-is@~1.5.1\n  - fix `hasbody` to be true for `content-length: 0`\n  - deps: media-typer@0.3.0\n  - deps: mime-types@~2.0.1\n- deps: vary@~1.0.0\n  - Accept valid `Vary` header string as `field`\n\n\n#### Version 3.17.1\n- Fix error in `req.subdomains` on empty host\n\n\n#### Version 3.17.0\n- Support IP address host in `req.subdomains`\n- deps: connect@2.26.0\n  - deps: body-parser@~1.8.1\n  - deps: compression@~1.1.0\n  - deps: connect-timeout@~1.3.0\n  - deps: cookie-parser@~1.3.3\n  - deps: cookie-signature@1.0.5\n  - deps: csurf@~1.6.1\n  - deps: debug@~2.0.0\n  - deps: errorhandler@~1.2.0\n  - deps: express-session@~1.8.1\n  - deps: finalhandler@0.2.0\n  - deps: fresh@0.2.4\n  - deps: media-typer@0.3.0\n  - deps: method-override@~2.2.0\n  - deps: morgan@~1.3.0\n  - deps: qs@2.2.3\n  - deps: serve-favicon@~2.1.3\n  - deps: serve-index@~1.2.1\n  - deps: serve-static@~1.6.1\n  - deps: type-is@~1.5.1\n  - deps: vhost@~3.0.0\n- deps: cookie-signature@1.0.5\n- deps: debug@~2.0.0\n- deps: fresh@0.2.4\n- deps: media-typer@0.3.0\n  - Throw error when parameter format invalid on parse\n- deps: range-parser@~1.0.2\n- deps: send@0.9.1\n  - Add `lastModified` option\n  - Use `etag` to generate `ETag` header\n  - deps: debug@~2.0.0\n  - deps: fresh@0.2.4\n- deps: vary@~1.0.0\n  - Accept valid `Vary` header string as `field`\n\n\n#### Version 4.8.8\n- deps: send@0.8.5\n  - Fix a path traversal issue when using `root`\n  - Fix malicious path detection for empty string path\n- deps: serve-static@~1.5.4\n  - deps: send@0.8.5\n\n\n#### Version 3.16.10\n- deps: connect@2.25.10\n  - deps: serve-static@~1.5.4\n- deps: send@0.8.5\n  - Fix a path traversal issue when using `root`\n  - Fix malicious path detection for empty string path\n\n\n#### Version 4.8.7\n- deps: qs@2.2.2\n  - Remove unnecessary cloning\n\n\n#### Version 3.16.9\n- deps: connect@2.25.9\n  - deps: body-parser@~1.6.7\n  - deps: qs@2.2.2\n\n\n#### Version 4.8.6\n- deps: qs@2.2.0\n  - Array parsing fix\n  - Performance improvements\n\n\n#### Version 3.16.8\n- deps: connect@2.25.8\n  - deps: body-parser@~1.6.6\n  - deps: csurf@~1.4.1\n  - deps: qs@2.2.0\n\n\n#### Version 4.8.5\n- deps: send@0.8.3\n  - deps: destroy@1.0.3\n  - deps: on-finished@2.1.0\n- deps: serve-static@~1.5.3\n  - deps: send@0.8.3\n\n\n#### Version 4.8.4\n- deps: qs@1.2.2\n- deps: send@0.8.2\n  - Work around `fd` leak in Node.js 0.10 for `fs.ReadStream`\n- deps: serve-static@~1.5.2\n  - deps: send@0.8.2\n\n\n#### Version 3.16.7\n- deps: connect@2.25.7\n  - deps: body-parser@~1.6.5\n  - deps: express-session@~1.7.6\n  - deps: morgan@~1.2.3\n  - deps: serve-static@~1.5.3\n- deps: send@0.8.3\n  - deps: destroy@1.0.3\n  - deps: on-finished@2.1.0\n\n\n#### Version 3.16.6\n- deps: connect@2.25.6\n  - deps: body-parser@~1.6.4\n  - deps: qs@1.2.2\n  - deps: serve-static@~1.5.2\n- deps: send@0.8.2\n  - Work around `fd` leak in Node.js 0.10 for `fs.ReadStream`\n\n\n#### Version 3.16.5\n- deps: connect@2.25.5\n  - Fix backwards compatibility in `logger`\n\n\n#### Version 4.8.3\n- deps: parseurl@~1.3.0\n- deps: qs@1.2.1\n- deps: serve-static@~1.5.1\n  - Fix parsing of weird `req.originalUrl` values\n  - deps: parseurl@~1.3.0\n  - deps: utils-merge@1.0.0\n\n\n#### Version 3.16.4\n- Fix original URL parsing in `res.location`\n- deps: connect@2.25.4\n  - Fix `query` middleware breaking with argument\n  - deps: body-parser@~1.6.3\n  - deps: compression@~1.0.11\n  - deps: connect-timeout@~1.2.2\n  - deps: express-session@~1.7.5\n  - deps: method-override@~2.1.3\n  - deps: on-headers@~1.0.0\n  - deps: parseurl@~1.3.0\n  - deps: qs@1.2.1\n  - deps: response-time@~2.0.1\n  - deps: serve-index@~1.1.6\n  - deps: serve-static@~1.5.1\n- deps: parseurl@~1.3.0\n\n\n#### Version 3.16.3\n- deps: connect@2.25.3\n  - deps: multiparty@3.3.2\n\n\n#### Version 4.8.2\n- deps: qs@1.2.0\n  - Fix parsing array of objects\n\n\n#### Version 3.16.2\n- deps: connect@2.25.2\n  - deps: body-parser@~1.6.2\n  - deps: qs@1.2.0\n\n\n#### Version 4.8.1\n- fix incorrect deprecation warnings on `res.download`\n- deps: qs@1.1.0\n  - Accept urlencoded square brackets\n  - Accept empty values in implicit array notation\n\n\n#### Version 3.16.1\n- deps: connect@2.25.1\n  - deps: body-parser@~1.6.1\n  - deps: qs@1.1.0\n\n\n#### Version 4.8.0\n- add `res.sendFile`\n  - accepts a file system path instead of a URL\n  - requires an absolute path or `root` option specified\n- deprecate `res.sendfile` -- use `res.sendFile` instead\n- support mounted app as any argument to `app.use()`\n- deps: qs@1.0.2\n  - Complete rewrite\n  - Limits array length to 20\n  - Limits object depth to 5\n  - Limits parameters to 1,000\n- deps: send@0.8.1\n  - Add `extensions` option\n- deps: serve-static@~1.5.0\n  - Add `extensions` option\n  - deps: send@0.8.1\n\n\n#### Version 3.16.0\n- deps: connect@2.25.0\n  - deps: body-parser@~1.6.0\n  - deps: compression@~1.0.10\n  - deps: csurf@~1.4.0\n  - deps: express-session@~1.7.4\n  - deps: qs@1.0.2\n  - deps: serve-static@~1.5.0\n- deps: send@0.8.1\n  - Add `extensions` option\n\n\n#### Version 4.7.4\n- fix `res.sendfile` regression for serving directory index files\n- deps: send@0.7.4\n  - Fix incorrect 403 on Windows and Node.js 0.11\n  - Fix serving index files without root dir\n- deps: serve-static@~1.4.4\n  - deps: send@0.7.4\n\n\n#### Version 3.15.3\n- fix `res.sendfile` regression for serving directory index files\n- deps: connect@2.24.3\n  - deps: serve-index@~1.1.5\n  - deps: serve-static@~1.4.4\n- deps: send@0.7.4\n  - Fix incorrect 403 on Windows and Node.js 0.11\n  - Fix serving index files without root dir\n\n\n#### Version 4.7.3\n- deps: send@0.7.3\n  - Fix incorrect 403 on Windows and Node.js 0.11\n- deps: serve-static@~1.4.3\n  - Fix incorrect 403 on Windows and Node.js 0.11\n  - deps: send@0.7.3\n\n\n#### Version 4.7.2\n- deps: depd@0.4.4\n  - Work-around v8 generating empty stack traces\n- deps: send@0.7.2\n  - deps: depd@0.4.4\n- deps: serve-static@~1.4.2\n\n\n#### Version 3.15.2\n- deps: connect@2.24.2\n  - deps: body-parser@~1.5.2\n  - deps: depd@0.4.4\n  - deps: express-session@~1.7.2\n  - deps: morgan@~1.2.2\n  - deps: serve-static@~1.4.2\n- deps: depd@0.4.4\n  - Work-around v8 generating empty stack traces\n- deps: send@0.7.2\n  - deps: depd@0.4.4\n\n\n#### Version 4.7.1\n- deps: depd@0.4.3\n  - Fix exception when global `Error.stackTraceLimit` is too low\n- deps: send@0.7.1\n  - deps: depd@0.4.3\n- deps: serve-static@~1.4.1\n\n\n#### Version 3.15.1\n- deps: connect@2.24.1\n  - deps: body-parser@~1.5.0\n  - deps: depd@0.4.3\n  - deps: express-session@~1.7.1\n  - deps: morgan@~1.2.1\n  - deps: serve-index@~1.1.4\n  - deps: serve-static@~1.4.1\n- deps: depd@0.4.3\n  - Fix exception when global `Error.stackTraceLimit` is too low\n- deps: send@0.7.1\n  - deps: depd@0.4.3\n\n\n#### Version 4.7.0\n- fix `req.protocol` for proxy-direct connections\n- configurable query parser with `app.set('query parser', parser)`\n  - `app.set('query parser', 'extended')` parse with \"qs\" module\n  - `app.set('query parser', 'simple')` parse with \"querystring\" core module\n  - `app.set('query parser', false)` disable query string parsing\n  - `app.set('query parser', true)` enable simple parsing\n- deprecate `res.json(status, obj)` -- use `res.status(status).json(obj)` instead\n- deprecate `res.jsonp(status, obj)` -- use `res.status(status).jsonp(obj)` instead\n- deprecate `res.send(status, body)` -- use `res.status(status).send(body)` instead\n- deps: debug@1.0.4\n- deps: depd@0.4.2\n  - Add `TRACE_DEPRECATION` environment variable\n  - Remove non-standard grey color from color output\n  - Support `--no-deprecation` argument\n  - Support `--trace-deprecation` argument\n- deps: finalhandler@0.1.0\n  - Respond after request fully read\n  - deps: debug@1.0.4\n- deps: parseurl@~1.2.0\n  - Cache URLs based on original value\n  - Remove no-longer-needed URL mis-parse work-around\n  - Simplify the \"fast-path\" `RegExp`\n- deps: send@0.7.0\n  - Add `dotfiles` option\n  - Cap `maxAge` value to 1 year\n  - deps: debug@1.0.4\n  - deps: depd@0.4.2\n- deps: serve-static@~1.4.0\n  - deps: parseurl@~1.2.0\n  - deps: send@0.7.0\n- perf: prevent multiple `Buffer` creation in `res.send`\n\n\n#### Version 3.15.0\n- Fix `req.protocol` for proxy-direct connections\n- Pass options from `res.sendfile` to `send`\n- deps: connect@2.24.0\n  - deps: body-parser@~1.5.0\n  - deps: compression@~1.0.9\n  - deps: connect-timeout@~1.2.1\n  - deps: debug@1.0.4\n  - deps: depd@0.4.2\n  - deps: express-session@~1.7.0\n  - deps: finalhandler@0.1.0\n  - deps: method-override@~2.1.2\n  - deps: morgan@~1.2.0\n  - deps: multiparty@3.3.1\n  - deps: parseurl@~1.2.0\n  - deps: serve-static@~1.4.0\n- deps: debug@1.0.4\n- deps: depd@0.4.2\n  - Add `TRACE_DEPRECATION` environment variable\n  - Remove non-standard grey color from color output\n  - Support `--no-deprecation` argument\n  - Support `--trace-deprecation` argument\n- deps: parseurl@~1.2.0\n  - Cache URLs based on original value\n  - Remove no-longer-needed URL mis-parse work-around\n  - Simplify the \"fast-path\" `RegExp`\n- deps: send@0.7.0\n  - Add `dotfiles` option\n  - Cap `maxAge` value to 1 year\n  - deps: debug@1.0.4\n  - deps: depd@0.4.2\n\n\n#### Version 4.6.1\n- fix `subapp.mountpath` regression for `app.use(subapp)`\n\n\n#### Version 4.6.0\n- accept multiple callbacks to `app.use()`\n- add explicit \"Rosetta Flash JSONP abuse\" protection\n  - previous versions are not vulnerable; this is just explicit protection\n- catch errors in multiple `req.param(name, fn)` handlers\n- deprecate `res.redirect(url, status)` -- use `res.redirect(status, url)` instead\n- fix `res.send(status, num)` to send `num` as json (not error)\n- remove unnecessary escaping when `res.jsonp` returns JSON response\n- support non-string `path` in `app.use(path, fn)`\n  - supports array of paths\n  - supports `RegExp`\n- router: fix optimization on router exit\n- router: refactor location of `try` blocks\n- router: speed up standard `app.use(fn)`\n- deps: debug@1.0.3\n  - Add support for multiple wildcards in namespaces\n- deps: finalhandler@0.0.3\n  - deps: debug@1.0.3\n- deps: methods@1.1.0\n  - add `CONNECT`\n- deps: parseurl@~1.1.3\n  - faster parsing of href-only URLs\n- deps: path-to-regexp@0.1.3\n- deps: send@0.6.0\n  - deps: debug@1.0.3\n- deps: serve-static@~1.3.2\n  - deps: parseurl@~1.1.3\n  - deps: send@0.6.0\n- perf: fix arguments reassign deopt in some `res` methods\n\n\n#### Version 3.14.0\n- add explicit \"Rosetta Flash JSONP abuse\" protection\n  - previous versions are not vulnerable; this is just explicit protection\n- deprecate `res.redirect(url, status)` -- use `res.redirect(status, url)` instead\n- fix `res.send(status, num)` to send `num` as json (not error)\n- remove unnecessary escaping when `res.jsonp` returns JSON response\n- deps: basic-auth@1.0.0\n  - support empty password\n  - support empty username\n- deps: connect@2.23.0\n  - deps: debug@1.0.3\n  - deps: express-session@~1.6.4\n  - deps: method-override@~2.1.0\n  - deps: parseurl@~1.1.3\n  - deps: serve-static@~1.3.1\n  - deps: debug@1.0.3\n    - Add support for multiple wildcards in namespaces\n  - deps: methods@1.1.0\n    - add `CONNECT`\n  - deps: parseurl@~1.1.3\n    - faster parsing of href-only URLs\n\n\n#### Version 4.5.1\n- fix routing regression when altering `req.method`\n\n\n#### Version 4.5.0\n- add deprecation message to non-plural `req.accepts*`\n- add deprecation message to `res.send(body, status)`\n- add deprecation message to `res.vary()`\n- add `headers` option to `res.sendfile`\n  - use to set headers on successful file transfer\n- add `mergeParams` option to `Router`\n  - merges `req.params` from parent routes\n- add `req.hostname` -- correct name for what `req.host` returns\n- deprecate things with `depd` module\n- deprecate `req.host` -- use `req.hostname` instead\n- fix behavior when handling request without routes\n- fix handling when `route.all` is only route\n- invoke `router.param()` only when route matches\n- restore `req.params` after invoking router\n- use `finalhandler` for final response handling\n- use `media-typer` to alter content-type charset\n- deps: accepts@~1.0.7\n- deps: send@0.5.0\n  - Accept string for `maxage` (converted by `ms`)\n  - Include link in default redirect response\n- deps: serve-static@~1.3.0\n  - Accept string for `maxAge` (converted by `ms`)\n  - Add `setHeaders` option\n  - Include HTML link in redirect response\n  - deps: send@0.5.0\n- deps: type-is@~1.3.2\n\n\n#### Version 3.13.0\n- add deprecation message to `app.configure`\n- add deprecation message to `req.auth`\n- use `basic-auth` to parse `Authorization` header\n- deps: connect@2.22.0\n  - deps: csurf@~1.3.0\n  - deps: express-session@~1.6.1\n  - deps: multiparty@3.3.0\n  - deps: serve-static@~1.3.0\n- deps: send@0.5.0\n  - Accept string for `maxage` (converted by `ms`)\n  - Include link in default redirect response\n\n\n#### Version 4.4.5\n- deps: cookie-signature@1.0.4\n  - fix for timing attacks\n\n\n#### Version 3.12.1\n- deps: connect@2.21.1\n  - deps: cookie-parser@1.3.2\n  - deps: cookie-signature@1.0.4\n  - deps: express-session@~1.5.2\n  - deps: type-is@~1.3.2\n- deps: cookie-signature@1.0.4\n  - fix for timing attacks\n\n\n#### Version 3.12.0\n- use `media-typer` to alter content-type charset\n- deps: connect@2.21.0\n  - deprecate `connect(middleware)` -- use `app.use(middleware)` instead\n  - deprecate `connect.createServer()` -- use `connect()` instead\n  - fix `res.setHeader()` patch to work with with get -> append -> set pattern\n  - deps: compression@~1.0.8\n  - deps: errorhandler@~1.1.1\n  - deps: express-session@~1.5.0\n  - deps: serve-index@~1.1.3\n\n\n#### Version 4.4.4\n- fix `res.attachment` Unicode filenames in Safari\n- fix \"trim prefix\" debug message in `express:router`\n- deps: accepts@~1.0.5\n- deps: buffer-crc32@0.2.3\n\n\n#### Version 3.11.0\n- deprecate things with `depd` module\n- deps: buffer-crc32@0.2.3\n- deps: connect@2.20.2\n  - deprecate `verify` option to `json` -- use `body-parser` module directly\n  - deprecate `verify` option to `urlencoded` -- use `body-parser` module directly\n  - deprecate things with `depd` module\n  - use `finalhandler` for final response handling\n  - use `media-typer` to parse `content-type` for charset\n  - deps: body-parser@1.4.3\n  - deps: connect-timeout@1.1.1\n  - deps: cookie-parser@1.3.1\n  - deps: csurf@1.2.2\n  - deps: errorhandler@1.1.0\n  - deps: express-session@1.4.0\n  - deps: multiparty@3.2.9\n  - deps: serve-index@1.1.2\n  - deps: type-is@1.3.1\n  - deps: vhost@2.0.0\n\n\n#### Version 4.4.3\n- fix persistence of modified `req.params[name]` from `app.param()`\n- deps: accepts@1.0.3\n  - deps: negotiator@0.4.6\n- deps: debug@1.0.2\n- deps: send@0.4.3\n  - Do not throw un-catchable error on file open race condition\n  - Use `escape-html` for HTML escaping\n  - deps: debug@1.0.2\n  - deps: finished@1.2.2\n  - deps: fresh@0.2.2\n- deps: serve-static@1.2.3\n  - Do not throw un-catchable error on file open race condition\n  - deps: send@0.4.3\n\n\n#### Version 3.10.5\n- deps: connect@2.19.6\n  - deps: body-parser@1.3.1\n  - deps: compression@1.0.7\n  - deps: debug@1.0.2\n  - deps: serve-index@1.1.1\n  - deps: serve-static@1.2.3\n- deps: debug@1.0.2\n- deps: send@0.4.3\n  - Do not throw un-catchable error on file open race condition\n  - Use `escape-html` for HTML escaping\n  - deps: debug@1.0.2\n  - deps: finished@1.2.2\n  - deps: fresh@0.2.2\n\n\n#### Version 4.4.2\n- fix catching errors from top-level handlers\n- use `vary` module for `res.vary`\n- deps: debug@1.0.1\n- deps: proxy-addr@1.0.1\n- deps: send@0.4.2\n  - fix \"event emitter leak\" warnings\n  - deps: debug@1.0.1\n  - deps: finished@1.2.1\n- deps: serve-static@1.2.2\n  - fix \"event emitter leak\" warnings\n  - deps: send@0.4.2\n- deps: type-is@1.2.1\n\n\n#### Version 3.10.4\n- deps: connect@2.19.5\n  - fix \"event emitter leak\" warnings\n  - deps: csurf@1.2.1\n  - deps: debug@1.0.1\n  - deps: serve-static@1.2.2\n  - deps: type-is@1.2.1\n- deps: debug@1.0.1\n- deps: send@0.4.2\n  - fix \"event emitter leak\" warnings\n  - deps: finished@1.2.1\n  - deps: debug@1.0.1\n\n\n#### Version 3.10.3\n- use `vary` module for `res.vary`\n- deps: connect@2.19.4\n  - deps: errorhandler@1.0.2\n  - deps: method-override@2.0.2\n  - deps: serve-favicon@2.0.1\n- deps: debug@1.0.0\n\n\n#### Version 3.10.2\n- deps: connect@2.19.3\n  - deps: compression@1.0.6\n\n\n#### Version 3.10.1\n- deps: connect@2.19.2\n  - deps: compression@1.0.4\n- deps: proxy-addr@1.0.1\n\n\n#### Version 4.4.1\n- deps: methods@1.0.1\n- deps: send@0.4.1\n  - Send `max-age` in `Cache-Control` in correct format\n- deps: serve-static@1.2.1\n  - use `escape-html` for escaping\n  - deps: send@0.4.1\n\n\n#### Version 3.10.0\n- deps: connect@2.19.1\n  - deprecate `methodOverride()` -- use `method-override` module directly\n  - deps: body-parser@1.3.0\n  - deps: method-override@2.0.1\n  - deps: multiparty@3.2.8\n  - deps: response-time@2.0.0\n  - deps: serve-static@1.2.1\n- deps: methods@1.0.1\n- deps: send@0.4.1\n  - Send `max-age` in `Cache-Control` in correct format\n\n\n#### Version 4.4.0\n- custom etag control with `app.set('etag', val)`\n  - `app.set('etag', function(body, encoding){ return '\"etag\"' })` custom etag generation\n  - `app.set('etag', 'weak')` weak tag\n  - `app.set('etag', 'strong')` strong etag\n  - `app.set('etag', false)` turn off\n  - `app.set('etag', true)` standard etag\n- mark `res.send` ETag as weak and reduce collisions\n- update accepts to 1.0.2\n  - Fix interpretation when header not in request\n- update send to 0.4.0\n  - Calculate ETag with md5 for reduced collisions\n  - Ignore stream errors after request ends\n  - deps: debug@0.8.1\n- update serve-static to 1.2.0\n  - Calculate ETag with md5 for reduced collisions\n  - Ignore stream errors after request ends\n  - deps: send@0.4.0\n\n\n#### Version 3.9.0\n- custom etag control with `app.set('etag', val)`\n  - `app.set('etag', function(body, encoding){ return '\"etag\"' })` custom etag generation\n  - `app.set('etag', 'weak')` weak tag\n  - `app.set('etag', 'strong')` strong etag\n  - `app.set('etag', false)` turn off\n  - `app.set('etag', true)` standard etag\n- Include ETag in HEAD requests\n- mark `res.send` ETag as weak and reduce collisions\n- update connect to 2.18.0\n  - deps: compression@1.0.3\n  - deps: serve-index@1.1.0\n  - deps: serve-static@1.2.0\n- update send to 0.4.0\n  - Calculate ETag with md5 for reduced collisions\n  - Ignore stream errors after request ends\n  - deps: debug@0.8.1\n\n\n#### Version 4.3.2\n- fix handling of errors from `router.param()` callbacks\n\n\n#### Version 3.8.1\n- update connect to 2.17.3\n  - deps: body-parser@1.2.2\n  - deps: express-session@1.2.1\n  - deps: method-override@1.0.2\n\n\n#### Version 4.3.1\n- revert \"fix behavior of multiple `app.VERB` for the same path\"\n  - this caused a regression in the order of route execution\n\n\n#### Version 4.3.0\n- add `req.baseUrl` to access the path stripped from `req.url` in routes\n- fix behavior of multiple `app.VERB` for the same path\n- fix issue routing requests among sub routers\n- invoke `router.param()` only when necessary instead of every match\n- proper proxy trust with `app.set('trust proxy', trust)`\n  - `app.set('trust proxy', 1)` trust first hop\n  - `app.set('trust proxy', 'loopback')` trust loopback addresses\n  - `app.set('trust proxy', '10.0.0.1')` trust single IP\n  - `app.set('trust proxy', '10.0.0.1/16')` trust subnet\n  - `app.set('trust proxy', '10.0.0.1, 10.0.0.2')` trust list\n  - `app.set('trust proxy', false)` turn off\n  - `app.set('trust proxy', true)` trust everything\n- set proper `charset` in `Content-Type` for `res.send`\n- update type-is to 1.2.0\n  - support suffix matching\n\n\n#### Version 3.8.0\n- keep previous `Content-Type` for `res.jsonp`\n- set proper `charset` in `Content-Type` for `res.send`\n- update connect to 2.17.1\n  - fix `res.charset` appending charset when `content-type` has one\n  - deps: express-session@1.2.0\n  - deps: morgan@1.1.1\n  - deps: serve-index@1.0.3\n\n\n#### Version 3.7.0\n- proper proxy trust with `app.set('trust proxy', trust)`\n  - `app.set('trust proxy', 1)` trust first hop\n  - `app.set('trust proxy', 'loopback')` trust loopback addresses\n  - `app.set('trust proxy', '10.0.0.1')` trust single IP\n  - `app.set('trust proxy', '10.0.0.1/16')` trust subnet\n  - `app.set('trust proxy', '10.0.0.1, 10.0.0.2')` trust list\n  - `app.set('trust proxy', false)` turn off\n  - `app.set('trust proxy', true)` trust everything\n- update connect to 2.16.2\n  - deprecate `res.headerSent` -- use `res.headersSent`\n  - deprecate `res.on(\"header\")` -- use on-headers module instead\n  - fix edge-case in `res.appendHeader` that would append in wrong order\n  - json: use body-parser\n  - urlencoded: use body-parser\n  - dep: bytes@1.0.0\n  - dep: cookie-parser@1.1.0\n  - dep: csurf@1.2.0\n  - dep: express-session@1.1.0\n  - dep: method-override@1.0.1\n\n\n#### Version 4.2.0\n- deprecate `app.del()` -- use `app.delete()` instead\n- deprecate `res.json(obj, status)` -- use `res.json(status, obj)` instead\n  - the edge-case `res.json(status, num)` requires `res.status(status).json(num)`\n- deprecate `res.jsonp(obj, status)` -- use `res.jsonp(status, obj)` instead\n  - the edge-case `res.jsonp(status, num)` requires `res.status(status).jsonp(num)`\n- fix `req.next` when inside router instance\n- include `ETag` header in `HEAD` requests\n- keep previous `Content-Type` for `res.jsonp`\n- support PURGE method\n  - add `app.purge`\n  - add `router.purge`\n  - include PURGE in `app.all`\n- update debug to 0.8.0\n  - add `enable()` method\n  - change from stderr to stdout\n- update methods to 1.0.0\n  - add PURGE\n\n\n#### Version 3.6.0\n- deprecate `app.del()` -- use `app.delete()` instead\n- deprecate `res.json(obj, status)` -- use `res.json(status, obj)` instead\n  - the edge-case `res.json(status, num)` requires `res.status(status).json(num)`\n- deprecate `res.jsonp(obj, status)` -- use `res.jsonp(status, obj)` instead\n  - the edge-case `res.jsonp(status, num)` requires `res.status(status).jsonp(num)`\n- support PURGE method\n  - add `app.purge`\n  - add `router.purge`\n  - include PURGE in `app.all`\n- update connect to 2.15.0\n  - Add `res.appendHeader`\n  - Call error stack even when response has been sent\n  - Patch `res.headerSent` to return Boolean\n  - Patch `res.headersSent` for node.js 0.8\n  - Prevent default 404 handler after response sent\n  - dep: compression@1.0.2\n  - dep: connect-timeout@1.1.0\n  - dep: debug@^0.8.0\n  - dep: errorhandler@1.0.1\n  - dep: express-session@1.0.4\n  - dep: morgan@1.0.1\n  - dep: serve-favicon@2.0.0\n  - dep: serve-index@1.0.2\n- update debug to 0.8.0\n  - add `enable()` method\n  - change from stderr to stdout\n- update methods to 1.0.0\n  - add PURGE\n- update mkdirp to 0.5.0\n\n\n#### Version 4.1.2\n- fix `req.host` for IPv6 literals\n- fix `res.jsonp` error if callback param is object\n\n\n#### Version 3.5.3\n- fix `req.host` for IPv6 literals\n- fix `res.jsonp` error if callback param is object\n\n\n"},"comment":{"url":"https://api.github.com/repos/hanselke/kaizen/issues/comments/333233374","html_url":"https://github.com/hanselke/kaizen/pull/7#issuecomment-333233374","issue_url":"https://api.github.com/repos/hanselke/kaizen/issues/7","id":333233374,"user":{"login":"doppins-bot","id":13711356,"avatar_url":"https://avatars0.githubusercontent.com/u/13711356?v=4","gravatar_id":"","url":"https://api.github.com/users/doppins-bot","html_url":"https://github.com/doppins-bot","followers_url":"https://api.github.com/users/doppins-bot/followers","following_url":"https://api.github.com/users/doppins-bot/following{/other_user}","gists_url":"https://api.github.com/users/doppins-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/doppins-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/doppins-bot/subscriptions","organizations_url":"https://api.github.com/users/doppins-bot/orgs","repos_url":"https://api.github.com/users/doppins-bot/repos","events_url":"https://api.github.com/users/doppins-bot/events{/privacy}","received_events_url":"https://api.github.com/users/doppins-bot/received_events","type":"User","site_admin":false},"created_at":"2017-09-29T20:39:25Z","updated_at":"2017-09-29T20:39:25Z","author_association":"NONE","body":"An additional new version was just released of `express`, so we've added an\nextra commit upgrading your range to `4.16.1`.\n\nHope that's alright!\n— [Doppins](https://doppins.com)\n"}}
{"actor":{"display_login":"doppins-bot"}}