- gevent and evenlet are BuildRequires for check
- add suggests
* document WEB_CONCURRENCY is set by, at least, Heroku
* capture peername from accept: Avoid calls to getpeername by capturing
the peer name returned by accept
* log a warning when a worker was terminated due to a signal
* fix tornado usage with latest versions of Django
* add support for python -m gunicorn
* fix systemd socket activation example
* allows to set wsgi application in configg file using wsgi_app
* document --timeout = 0
* always close a connection when the number of requests exceeds the max requests
* Disable keepalive during graceful shutdown
* kill tasks in the gthread workers during upgrade
* fix latency in gevent worker when accepting new requests
* fix file watcher: handle errors when new worker reboot and ensure
the list of files is kept
* document the default name and path of the configuration file
* document how variable impact configuration
* document the $PORT environment variable
* added milliseconds option to request_time in access_log
* added PIP requirements to be used for example
* remove version from the Server header
* fix sendfile: use socket.sendfile instead of os.sendfile
* reloader: use absolute path to prevent empty to prevent0 InotifyError
when a file is added to the working directory
* Add --print-config option to print the resolved settings at startup.
* remove the --log-dict-config CLI flag because it never had a working format
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-gunicorn?expand=0&rev=48
- update to 20.0.4
* Ensure WSGI header value is string before conducting regex search on it.
* Use importlib instead of __import__ and eval
* Use Python default SSL cipher list by default
* Support str and bytes for UNIX socket addresses
* fixed the way the config module is loaded. __file__ is now available
* only support Python >= 3.5
* load the WSGI application before the loader to pick up all files
- Dropped patch pytest5.patch
OBS-URL: https://build.opensuse.org/request/show/792774
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-gunicorn?expand=0&rev=44
- update to 19.10.0
- last with py2 support
* unblock select loop during reload of a sync worker
* security fix: http desync attack
* handle `wsgi.input_terminated`
* added support for str and bytes in unix socket addresses
* fixed `max_requests` setting
* headers values are now encoded as LATN1, not ASCII
* fixed `InotifyReloadeder`: handle `module.__file__` is None
* fixed compatibility with tornado 6
* fixed root logging
* Prevent removalof unix sockets from `reuse_port`
* Clear tornado ioloop before os.fork
* Miscellaneous fixes and improvement for linting using Pylints
OBS-URL: https://build.opensuse.org/request/show/790071
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-gunicorn?expand=0&rev=17
- last with py2 support
* unblock select loop during reload of a sync worker
* security fix: http desync attack
* handle `wsgi.input_terminated`
* added support for str and bytes in unix socket addresses
* fixed `max_requests` setting
* headers values are now encoded as LATN1, not ASCII
* fixed `InotifyReloadeder`: handle `module.__file__` is None
* fixed compatibility with tornado 6
* fixed root logging
* Prevent removalof unix sockets from `reuse_port`
* Clear tornado ioloop before os.fork
* Miscellaneous fixes and improvement for linting using Pylints
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-gunicorn?expand=0&rev=42
- update to 19.7.1:
- fix: continue if SO_REUSEPORT seems to be available but fails (:issue:`1480`)
- fix: support non-decimal values for the umask command line option (:issue:`1325`)
- The previously deprecated ``gunicorn_django`` command has been removed.
Use the :ref:`gunicorn-cmd` command-line interface instead.
- The previously deprecated ``django_settings`` setting has been removed.
Use the :ref:`raw-env` setting instead.
- The default value of :ref:`ssl-version` has been changed from
``ssl.PROTOCOL_TLSv1`` to ``ssl.PROTOCOL_SSLv23``.
- fix: initialize the group access list when initgroups is set (:issue:`1297`)
- add environment variables to gunicorn access log format (:issue:`1291`)
- add --paste-global-conf option (:issue:`1304`)
- fix: print access logs to STDOUT (:issue:`1184`)
- remove upper limit on max header size config (:issue:`1313`)
- fix: print original exception on AppImportError (:issue:`1334`)
- use SO_REUSEPORT if available (:issue:`1344`)
- `fix leak <https://github.com/benoitc/gunicorn/commit/\
b4c41481e2d5ef127199a4601417a6819053c3fd>`_ of duplicate file descriptor
for bound sockets.
- add --reload-engine option, support inotify and other backends (:issue:`1368`, :issue:`1459`)
- fix: reject request with invalid HTTP versions
- add ``child_exit`` callback (:issue:`1394`)
- add support for eventlets _AlreadyHandled object (:issue:`1406`)
- format boot tracebacks properly with reloader (:issue:`1408`)
- refactor socket activation and fd inheritance for better support of SystemD (:issue:`1310`)
- fix: o fds are given by default in gunicorn (:issue:`1423`)
- add ability to pass settings to GUNICORN_CMD_ARGS environnement variable which helps in container world (:issue:`1385`)
- fix: catch access denied to pid file (:issue:`1091`)
- many additions and improvements to the documentation
- improvement of the binary upgrade behaviour using USR2: remove file locking (:issue:`1270`)
OBS-URL: https://build.opensuse.org/request/show/507399
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-gunicorn?expand=0&rev=35
- Update to version 18.0
+ new: add -e/--env command line argument to pass an environment
variables to gunicorn
+ new: add --chdir command line argument to specified directory
before apps loading. - new: add wsgi.file_wrapper support in
async workers
+ new: add --paste command line argument to set the paster config file
+ deprecated: the command gunicorn_django is now deprecated. You
should now run your application with the WSGI interface installed
with your project
(see https://docs.djangoproject.com/en/1.4/howto/deployment/wsgi/gunicorn/)
for more infos.
+ deprecated: the command gunicorn_paste is deprecated. You now should
use the new --paste argument to set the configuration file of your
paster application.
+ fix: Removes unmatched leading quote from the beginning of the
default access log format string
+ fix: null timeout
+ fix: gevent worker
+ fix: don’t reload the paster app when using pserve
+ fix: after closing for error do not keep alive the connection
+ fix: responses 1xx, 204 and 304 should not force the connection
to be closed
- Changes from 17.5
+ new: add signals documentation
+ new: add post_worker_init hook for workers
+ new: try to use gunicorn.conf.py in current folder as the default
config file.
+ fix graceful timeout with the Eventlet worker
+ fix: don’t raise an error when closing the socket if already closed
+ fix: fix –settings parameter for django application and try to find
the django settings when using the gunicorn command.
+ fix: give the initial global_conf to paster application
+ New versionning: With this release, the versionning of Gunicorn is
changing. Gunicorn is stable since a long time and there is no point
to release a “1.0” now. It should have been done since a long time.
0.17 really meant it was the 17th stable version. From the beginning
we have only 2 kind of releases:
- major release: releases with major changes or huge features added
services releases: fixes and minor features added So from now we
will apply the following versionning <major>.<service>.
For example 17.5 is a service release.
- Changes from 0.17.4
+ fix unix socket address parsing
- Changes from 0.17.3
+ add systemd sockets support
+ add python -m gunicorn.app.wsgiapp support
+ improve logger class inheritance
+ exit when the config file isn’t found
+ add the -R option to enable stdio inheritance in daemon mode
+ don’t close file descriptors > 3 in daemon mode
+ improve STDOUT/STDERR logging
+ fix pythonpath option
+ fix pidfile creation on Python 3
+ fix gevent worker exit
+ fix ipv6 detection when the platform isn’t supporting it (forwarded request 210375 from posophe)
OBS-URL: https://build.opensuse.org/request/show/210376
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-gunicorn?expand=0&rev=10
- Update to version 18.0
+ new: add -e/--env command line argument to pass an environment
variables to gunicorn
+ new: add --chdir command line argument to specified directory
before apps loading. - new: add wsgi.file_wrapper support in
async workers
+ new: add --paste command line argument to set the paster config file
+ deprecated: the command gunicorn_django is now deprecated. You
should now run your application with the WSGI interface installed
with your project
(see https://docs.djangoproject.com/en/1.4/howto/deployment/wsgi/gunicorn/)
for more infos.
+ deprecated: the command gunicorn_paste is deprecated. You now should
use the new --paste argument to set the configuration file of your
paster application.
+ fix: Removes unmatched leading quote from the beginning of the
default access log format string
+ fix: null timeout
+ fix: gevent worker
+ fix: don’t reload the paster app when using pserve
+ fix: after closing for error do not keep alive the connection
+ fix: responses 1xx, 204 and 304 should not force the connection
to be closed
- Changes from 17.5
+ new: add signals documentation
+ new: add post_worker_init hook for workers
+ new: try to use gunicorn.conf.py in current folder as the default
config file.
+ fix graceful timeout with the Eventlet worker
+ fix: don’t raise an error when closing the socket if already closed
+ fix: fix –settings parameter for django application and try to find
the django settings when using the gunicorn command.
+ fix: give the initial global_conf to paster application
+ New versionning: With this release, the versionning of Gunicorn is
changing. Gunicorn is stable since a long time and there is no point
to release a “1.0” now. It should have been done since a long time.
0.17 really meant it was the 17th stable version. From the beginning
we have only 2 kind of releases:
- major release: releases with major changes or huge features added
services releases: fixes and minor features added So from now we
will apply the following versionning <major>.<service>.
For example 17.5 is a service release.
- Changes from 0.17.4
+ fix unix socket address parsing
- Changes from 0.17.3
+ add systemd sockets support
+ add python -m gunicorn.app.wsgiapp support
+ improve logger class inheritance
+ exit when the config file isn’t found
+ add the -R option to enable stdio inheritance in daemon mode
+ don’t close file descriptors > 3 in daemon mode
+ improve STDOUT/STDERR logging
+ fix pythonpath option
+ fix pidfile creation on Python 3
+ fix gevent worker exit
+ fix ipv6 detection when the platform isn’t supporting it
OBS-URL: https://build.opensuse.org/request/show/210375
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-gunicorn?expand=0&rev=29
- improvement: performance of http.body.Body.readline()
- improvement: log HTTP errors in access log like Apache
- improvment: display traceback when the worker fails to boot
- improvement: makes gunicorn work with gevent 1.0
- examples: websocket example now supports hybi13
- fix: reopen log files after initialization
- fix: websockets support
- fix: django1.4 support
- fix: only load the paster application 1 time
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-gunicorn?expand=0&rev=19