Release notes
*Sourced from [gunicorn's releases](https://github.com/benoitc/gunicorn/releases).*
> ## 20.0.2
>
> - fix changelog
>
> ## 20.0.1
>
> - fixed the way the config module is loaded. `__file__` is now available
> - fixed `wsgi.input_terminated`. It is always true.
> - use the highest protocol version of openssl by default
> - only support Python >= 3.5
> - added `__repr__` method to `Config` instance
> - fixed support of AIX platform and musl libc in `socketfromfd.fromfd` function
> - fixed support of applications loaded from a factory function
> - fixed chunked encoding support to prevent any `request smuggling `_
> - Capture os.sendfile before patching in gevent and eventlet workers.
> fix `RecursionError`.
> - removed locking in reloader when adding new files
> - load the WSGI application before the loader to pick up all files
>
> > **note** this release add official support for applications loaded from a factory function
> as documented in Flask and other places.
>
> ## 20.0
> - Fixed `fdopen` `RuntimeWarning` in Python 3.8
> - Added check and exception for str type on value in Response process_headers method.
> - Ensure WSGI header value is string before conducting regex search on it.
> - Added pypy3 to list of tested environments
> - Grouped `StopIteration` and `KeyboardInterrupt` exceptions with same body together in Arbiter.run()
> - Added `setproctitle` module to `extras_require` in setup.py
> - Avoid unnecessary chown of temporary files
> - Logging: Handle auth type case insensitively
> - Removed `util.import_module`
> - Removed fallback for `types.SimpleNamespace` in tests utils
> - Use `SourceFileLoader` instead instead of `execfile_`
> - Use `importlib` instead of `__import__` and eval`
> - Fixed eventlet patching
> - Added optional `datadog `_ tags for statsd metrics
> - Header values now are encoded using latin-1, not ascii.
> - Rewritten `parse_address` util added test
> - Removed redundant super() arguments
> - Simplify `futures` import in gthread module
> - Fixed worker_connections` setting to also affects the Gthread worker type
> - Fixed setting max_requests
> - Bump minimum Eventlet and Gevent versions to 0.24 and 1.4
> - Use Python default SSL cipher list by default
> - handle `wsgi.input_terminated` extension
> - Simplify Paste Deployment documentation
> - Fix root logging: root and logger are same level.
> - Fixed typo in ssl_version documentation
> - Documented systemd deployement unit examples
> ... (truncated)
Commits
- [`911f705`](https://github.com/benoitc/gunicorn/commit/911f7057eff2678359e327114025fa396e351b36) bump to 20.0.2
- [`83bfe9e`](https://github.com/benoitc/gunicorn/commit/83bfe9e737433a1e8067da988dd5ffa1dba96cda) fix typo
- [`a4803a4`](https://github.com/benoitc/gunicorn/commit/a4803a48a6cc747ff3ebd82d570f24c75d585e97) fix 19.10 version in doc
- [`333dc9b`](https://github.com/benoitc/gunicorn/commit/333dc9bb4d77d0bd3183b4a2f77265a9c9d627f6) fix doc title
- [`e3659e8`](https://github.com/benoitc/gunicorn/commit/e3659e8adc610aa2bbbd85d8654e44cd9bc0a09e) document 20.0.1 change
- [`ef7d108`](https://github.com/benoitc/gunicorn/commit/ef7d10853d7d7407a60a0384255556357497bc92) add 19.9.10 changelog
- [`455767b`](https://github.com/benoitc/gunicorn/commit/455767b96af59fe3c723826455f542ded0ecad7f) remove useless import in app.base
- [`0752ccd`](https://github.com/benoitc/gunicorn/commit/0752ccd5dfc9561c15ccbb8e6c1fd4daf4965e61) remove Python 3.4 testing in travis
- [`ad4ff8c`](https://github.com/benoitc/gunicorn/commit/ad4ff8cb3cfff95e9eda3d58bab97b875b565151) modernize the way the config module is loaded
- [`441977f`](https://github.com/benoitc/gunicorn/commit/441977f57c628dffb903ce66cf50dcba92c1872e) only support python >= 3.5
- Additional commits viewable in [compare view](https://github.com/benoitc/gunicorn/compare/19.9.0...20.0.2)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
Bumps gunicorn from 19.9.0 to 20.0.2.
Release notes
*Sourced from [gunicorn's releases](https://github.com/benoitc/gunicorn/releases).* > ## 20.0.2 > > - fix changelog > > ## 20.0.1 > > - fixed the way the config module is loaded. `__file__` is now available > - fixed `wsgi.input_terminated`. It is always true. > - use the highest protocol version of openssl by default > - only support Python >= 3.5 > - added `__repr__` method to `Config` instance > - fixed support of AIX platform and musl libc in `socketfromfd.fromfd` function > - fixed support of applications loaded from a factory function > - fixed chunked encoding support to prevent any `request smugglingCommits
- [`911f705`](https://github.com/benoitc/gunicorn/commit/911f7057eff2678359e327114025fa396e351b36) bump to 20.0.2 - [`83bfe9e`](https://github.com/benoitc/gunicorn/commit/83bfe9e737433a1e8067da988dd5ffa1dba96cda) fix typo - [`a4803a4`](https://github.com/benoitc/gunicorn/commit/a4803a48a6cc747ff3ebd82d570f24c75d585e97) fix 19.10 version in doc - [`333dc9b`](https://github.com/benoitc/gunicorn/commit/333dc9bb4d77d0bd3183b4a2f77265a9c9d627f6) fix doc title - [`e3659e8`](https://github.com/benoitc/gunicorn/commit/e3659e8adc610aa2bbbd85d8654e44cd9bc0a09e) document 20.0.1 change - [`ef7d108`](https://github.com/benoitc/gunicorn/commit/ef7d10853d7d7407a60a0384255556357497bc92) add 19.9.10 changelog - [`455767b`](https://github.com/benoitc/gunicorn/commit/455767b96af59fe3c723826455f542ded0ecad7f) remove useless import in app.base - [`0752ccd`](https://github.com/benoitc/gunicorn/commit/0752ccd5dfc9561c15ccbb8e6c1fd4daf4965e61) remove Python 3.4 testing in travis - [`ad4ff8c`](https://github.com/benoitc/gunicorn/commit/ad4ff8cb3cfff95e9eda3d58bab97b875b565151) modernize the way the config module is loaded - [`441977f`](https://github.com/benoitc/gunicorn/commit/441977f57c628dffb903ce66cf50dcba92c1872e) only support python >= 3.5 - Additional commits viewable in [compare view](https://github.com/benoitc/gunicorn/compare/19.9.0...20.0.2)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)