uWSGI 2.0.3¶
Changelog 20140317
Bugfixes¶
fixed spooler ‘at’ key usage
fixed a memory and fd leak with on-demand Emperor sokets
on __APPLE__ use LOG_NOTICE for syslog plugin
fixed mongrel2 support
hack for avoiding libmongoclient to crash on broken cursor
log alarm is now a uwsgi_log_verbose() wrapper
fixed tuntap router memory corruption
Set ECDHE curve independently from DHE parameters (Hynek Schlawack)
do not wait for a whole Emperor cycle before checking for each waitpid
fix a regression with caller() not indicating the starting *.psgi program (Ævar Arnfjörð Bjarmason)
New features¶
Emperor SIGWINCH and SIGURG¶
The Emperor now responds to two new signals:
SIGWINCH: force an emperor rescan of vassals
SIGURG: cleanup the Emperor states (for now it only clears its blacklist)
Building plugins on-the-fly from git repositories¶
You can now build plugins stored on git servers:
uwsgi --build-plugin https://github.com/unbit/uwsgi-bonjour
or
UWSGI_EMBED_PLUGINS="bonjour=https://github.com/unbit/uwsgi-bonjour" pip install uwsgi
uwsgi.add_var(key, value)¶
You can now set request variables direcly from your app, for better integration with the internal routing subsystem
my $app = sub {
uwsgi::add_var("newvar","newvalue");
return [200, ['Content-Type' => 'text/html'], ["Hello"]];
}
uwsgi --http-socket :9090 --psgi hello.pl --response-route-run "log:\${newvar}"
add_var has been implemented in the CPython and Perl plugins
‘disableheaders’ routing action¶
This new action disables the sending of response headers, independently by the current request state
Smarter Emperor on bad conditions¶
Now the Emperor completely destroys internal vassal-related structures when it is impossible to correctly kill a broken vassal (both for inconsistent Emperor state or for internal system problems)
Availability¶
You can download uWSGI 2.0.3 from: https://projects.unbit.it/downloads/uwsgi-2.0.3.tar.gz