Changelog - 2018 — Gunicorn 21.0.0 documentation

# Changelog - 2018

Note

Please see Changelog for the latest changes

## 19.9.0 / 2018/07/03

- fix: address a regression that prevented syslog support from working (issue 1668, pull request 1773)

- fix: correctly set REMOTE_ADDR on versions of Python 3 affected by Python Issue 30205 (issue 1755, pull request 1796)

- fix: show zero response length correctly in access log (pull request 1787)

- fix: prevent raising `AttributeError` when `--reload` is not passed in case of a `SyntaxError` raised from the WSGI application. (issue 1805, pull request 1806)

- The internal module `gunicorn.workers.async` was renamed to `gunicorn.workers.base_async` since `async` is now a reserved word in Python 3.7. (pull request 1527)

## 19.8.1 / 2018/04/30

- fix: secure scheme headers when bound to a unix socket (issue 1766, pull request 1767)

## 19.8.0 / 2018/04/28

- Eventlet 0.21.0 support (issue 1584)

- Tornado 5 support (issue 1728, pull request 1752)

- support watching additional files with `--reload-extra-file` (pull request 1527)

- support configuring logging with a dictionary with `--logging-config-dict` (issue 1087, pull request 1110, pull request 1602)

- add support for the `--config` flag in the `GUNICORN_CMD_ARGS` environment variable (issue 1576, pull request 1581)

- disable `SO_REUSEPORT` by default and add the `--reuse-port` setting (issue 1553, issue 1603, pull request 1669)

- fix: installing inotify on MacOS no longer breaks the reloader (issue 1540, pull request 1541)

- fix: do not throw `TypeError` when `SO_REUSEPORT` is not available (issue 1501, pull request 1491)

- fix: properly decode HTTP paths containing certain non-ASCII characters (issue 1577, pull request 1578)

- fix: remove whitespace when logging header values under gevent (pull request 1607)

- fix: close unlinked temporary files (issue 1327, pull request 1428)

- fix: parse `--umask=0` correctly (issue 1622, pull request 1632)

- fix: allow loading applications using relative file paths (issue 1349, pull request 1481)

- fix: force blocking mode on the gevent sockets (issue 880, pull request 1616)

- fix: preserve leading / in request path (issue 1512, pull request 1511)

- fix: forbid contradictory secure scheme headers

- fix: handle malformed basic authentication headers in access log (issue 1683, pull request 1684)

- fix: defer handling of `USR1` signal to a new greenlet under gevent (issue 1645, pull request 1651)

- fix: the threaded worker would sometimes close the wrong keep-alive connection under Python 2 (issue 1698, pull request 1699)

- fix: re-open log files on `USR1` signal using `handler._open` to support subclasses of `FileHandler` (issue 1739, pull request 1742)

- deprecation: the `gaiohttp` worker is deprecated, see the worker_class documentation for more information (issue 1338, pull request 1418, pull request 1569)