- uWSGI 2.0.8
- Bugfixes
- New Features
- RTSP and chunked input backports from 2.1 for the HTTP router
- –hook-post-fork
- fallback to trollius for asyncio plugin
- added sweep_on_full, clear_on_full and no_expire to —cache2
- backported wait-for-fs/mountpoints from 2.1
- improved the offload api (backport from 2.1)
- Allows building plugins from remote sources as embedded
- Automatically manage HTTP_X_FORWARDED_PROTO
- Availability
uWSGI 2.0.8
Note: this is the first version with disabled-by-default SSL3, if you need it, you can re-enable with —ssl-enable3
option
Bugfixes
- fixed PHP SCRIPT_NAME usage when
—php-app
is in place - allow “appendn” hook without second argument
- fix heap corruption in the Carbon plugin (credits: Nigel Heron)
- fix getifaddrs() memory management
- fixed tcsetattr() usage
- fixed kevent usage of return value (credits: Adriano Di Luzio)
- ensure PSGI response headers are in the right format
- fixed reloading of attached daemons
- fixed SSL/TLS shutdown
- fixed mountpoint logic for paths not ending with / (credits: Adriano Di Luzio)
- fixed Python3 support in spooler decorators (credits: Adriano Di Luzio)
New Features
RTSP and chunked input backports from 2.1 for the HTTP router
The —http-manage-rtsp
and ``–http-chunked-input` have been backported from 2.1 allowing the HTTP routerto detect RTSP and chunked requests automatically. This is useful for the upcoming https://github.com/unbit/uwsgi-realtime plugin.
–hook-post-fork
This custom hook allows you to call actions after each fork().
fallback to trollius for asyncio plugin
If you build the asyncio plugin for python2, a fallback to the trollius module will be tried.
This feature has gotten basically zero test coverage, so every report (bug or success alike) is welcome.
added sweep_on_full, clear_on_full and no_expire to —cache2
Three new options for —cache2
have been added for improving the caching expire strategies:
sweep_on_full
will call a sweep (delete all of the expired items) as soon as the cache became fullclear_on_full
will completely clear the cache as soon as it is fullno_expire
forces the cache to not generate a cache sweeper thread, delegating items removal to the two previous options
backported wait-for-fs/mountpoints from 2.1
—wait-for-fs <path>
suspend the uWSGI startup until a file/directory is available—wait-for-file <path>
suspend the uWSGI startup until a file is available—wait-for-dir <path>
suspend the uWSGI startup until a directory is available—wait-for-mountpoint <path>
suspend the uWSGI startup until a mountpoint is available
improved the offload api (backport from 2.1)
uWSGI 2.0.8 is compatible with the upcoming https://github.com/unbit/uwsgi-realtime plugin that allows the use of realtime features(like websockets or audio/video streaming) using the uWSGI offload engine + Redis publish/subscribe.
Allows building plugins from remote sources as embedded
The UWSGI_EMBED_PLUGINS environment variable has been extended to support remote plugins. As an example you can build a monolithicuwsgi binary with the Avahi and realtime plugins as:
- UWSGI_EMBED_PLUGINS="avahi=https://github.com/20tab/uwsgi-avahi,realtime=https://github.com/unbit/uwsgi-realtime" make
Automatically manage HTTP_X_FORWARDED_PROTO
Albeit a new standard is avavailble in the HTTP world for forwarded sessions (http://tools.ietf.org/html/rfc7239) this releaseadds support for the X-Forwarded-Proto header, automatically setting the request scheme accordingly.
Availability
uWSGI 2.0.8 has been released on 20141026. Download it from: