* Fix compilation with GCC 6
* Remote rpc fixes (Darvame)
* Musl support! (Natanael Copa, Matt Dainty, Riccardo Magliocchetti)
* Create the spooler directory if it does not exist (Alexandre Bonnetain)
* Fix compilation on big endian linux (Riccardo Magliocchetti)
* A ton of cache fixes (Darvame)
* Make it easier to compile plugins on a different directory (Jakub
Jirutka)
* Add wheel package machinery (Matt Robenolt)
* Use EPOLLEXCLUSIVE for reading, helps with the thundering herd problem
(on linux 4.5+) (INADA Naoki)
* Fix apache 2.4 integration with unix sockets (Alexandre Rossi)
* Add HTTP/2 support to apache 2 proxy (Michael Fladischer, OGAWA Hirofumi)
* Fix apache mod proxy compilation with apache 2.4.20 (Mathieu Arnold)
* Default to clang as default compiler on MacOS X (Riccardo Magliocchetti)
* Added --cgi-close-stdin-on-eof (Roberto De Ioris)
OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=48
* Bugfixes
* fixed a memory leak with subscription system
* fixed shortcut for ssl-socket
* fixed apache2 mod_proxy_uwsgi (it is now considered stable with all mpm
engines)
* fixed SCRIPT_NAME and PATH_TRANSLATED generation in php plugin (thanks
Matthijs Kooijman)
* remove the old FIFO socket from the event queue when recreating it
(thanks Marko Tiikkaja)
* New features
* The new Rados plugins. The rados plugin has been improved and
stabilized, and now it is considered usable in production.
* --if-hostname. This is a configuration logic for including options only
when the specified hostname matches
* Apache2 mod_proxy_uwsgi stabilization. After literally years of bug
reports, and corrupted data, the mod_proxy_uwsgi is now stable, and on
modern apache2 releases it supports unix sockets too
* uwsgi[rsize] routing var. This routing var (meaningful only in the
'final' chain) exposes the response size of the request
* the callint scheme. This scheme allows you to generate blob from
functions exposed by your uWSGI instance
* --fastrouter-fallback-on-no-key. The corerouters fallback procedure
requires a valid key (domain name) has been requested. This option
forces the various routers to trigger the fallback procedure even if a
key has not been found
* php 5.5 opcode caching via --php-sapi-name
* Improved chain-reloading. Thanks to Marko Tiikkaja the chain reloading
procedure correctly works in cheaper modes and it is more verbose
* added 'chdir' keyval to --attach-daemon2. You can now set where attached
OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=36
* Bugfixes
* fixed spooler 'at' key usage
* fixed a memory and fd leak with on-demand Emperor sockets
* 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
* 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)
* --build-plugin. Building plugins on-the-fly from git repositories
* uwsgi.add_var(key, value). You can now set request variables directly
from your app, for better integration with the internal routing
subsystem
* '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)
- Update to 2.0.2:
OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=34
* Bugfixes
* fixed python3 support on older compilers/libc
* allow starting in spooler-only mode
* fixed cache bitmap support and added test suite (credits: Danila Shtan)
* fixed ftime log var
* added async remote signal management
* fixed end-for and end-if
* fixed loop in internal-routing response chain
* fixed pypy execute_source usage
* logpipe: Don't setsid() twice (credits: INADA Naoki)
* New features and improvements
* CGI plugin
* The plugin has been improved to support streaming
* The long-awaited async support is finally ready
* PSGI loading improvements
* The PSGI loader now tries to use Plack::Util::load_psgi() function
instead of simple eval
OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=31
* This release starts the 'hardening' cycle for uWSGI 2.0 (scheduled for the
end of december 2013). The metrics subsystem was the last piece missing
and this version (after 1 year of analysis) finally includes it. During
the following 2 months we will start deprecating features or plugins that
got no-interest, are known to be broken or are simply superseed by more
modern/advanced ones.
* Bugfixes
* completely skip cgroups initialization when non-root
* tons of post-static_analysis fixes by Riccardo Magliocchetti
* fixed the greenlet plugin reference counting
* avoid kevent storm for stats pusher thread
* fixed rbtimers math
* both 'cache' and 'file' routers got a 'no_content_length' key option to
avoid setting the Content-Length header
* the PyPy plugin automatically enables threads/GIL
* manage dot_segments in HTTP parser
* improved srand() usage
* New features
* The Metrics subsystem. This was the last piece missing before uWSGI 2.0.
The Metrics subsystem allows you to store "numbers" related to
monitoring, graphing and quality checks and exports them in various ways
* The Tornado loop engine. While working on nodejs integration we realized
that contrary to what we used to believe, Tornado (an asynchronous,
callback based module for python) is usable in uWSGI.
* The 'puwsgi' protocol. A "persistent" (keep-alive) version of the
'uwsgi' parser has been added named 'puwsgi' (persistent uwsgi).
* --vassal-set. You can tell the Emperor to pass specific options to every
vassal using the --set facility
* The 'template' transformation. This is a transformation allowing you to
OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=27
* check for NULL dictionary values in python3 autoreloader
* fixed fastrouter realloc() bug
* fixed stdin and embedded configuration
* fixed vassal's strict mode
* fixed UUID randomization when libuuid is not used
* added --iprint (immediate print) option
- Changes from 1.9.18:
* License change. This version of uWSGI is the first of the 1.9 tree using
GPL2 + linking exception instead of plain GPL2
* Bugfixes
* fixed uwsgi native protocol support on big endian machines
* fixed jvm build system for arm (Jorge Gallegos)
* fixed a memleak spotted by cppcheck in zlib management
* chdir() at every emperor glob iteration
* correctly honour --force-cwd
* fixed ia64/Linux compilation (Jonas Smedegaard/Riccardo Magliocchetti)
* fixed ruby rvm paths parsing order
* added waitpid() after daemon’s SIGTERM (Łukasz Mierzwa)
* fixed pid numbering after --idle (Łukasz Mierzwa)
* fixed/improved cheaper memory limits (Łukasz Mierzwa)
* correctly close inherited sockets in gateways
* fix checks for MAP_FAILED in mmap() (instead of NULL)
* fixed FastCGI non-blocking body read() (patch by Arkaitz Jimenez)
* fixed attach.py script
* avoid crashing on non-conformant PSGI response headers
* run the python autoreloader even in non-apps mode when non-lazy
* New Features
* https://uwsgi-docs.readthedocs.org/en/latest/Changelog-1.9.18.html
* Minimal build profiles
OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=25
versions of v8, as it seems that upstream is not maintaining it
- Update to 1.9.17
* Bugfixes
* the pty client is now blocking (safer approach)
* removed strtok() usage (substituted by a new uwsgi api function on top
of strtok_r())
* fixed --pty-exec (Credits: C Anthony Risinger)
* listen_queue/somaxconn linux check is now done even for UNIX sockets
* New features
* https://uwsgi-docs.readthedocs.org/en/latest/Changelog-1.9.17.html
* The Master FIFO: a new management way in addition to UNIX signals
* A new hook, named asap has been added. It will be run soon after the
options are parsed
* The TCC (libtcc) plugin: TCC is an embeddable c compiler. It includes a
shared library (libtcc) you can use to compile strings of c code on the
fly. The libtcc uWSGI plugins allows compiling strings of c to process
symbols. Currently the "tcc" hook engine has been implemented:
* The forkptyrouter gateway: While work on Linux containers/namespaces
continues to improve we have added this special router/gateway allowing
dynamic allocation of pseodoterminals in uWSGI instances. To access the
sockets created by the forkptyrouter you can use the --pty-connect
option exposed by the pty plugin.
* added a new magic var for ANSI escaping. It allows you to define ANSI
sequences in your logs
* Routable log encoders: You can now attach log encoders to specific log
routes
* --vassals-include: This is like --vassal-inherit but the parsing will be
"immediate" (so you can use placeholders)
* The Emperor heartbeat system is now mercyless. The old approach for the
OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=18
* Bugfixes
* Fixed a corner case bug when response offloading is enabled, but no
request plugin is loaded
* Fixed harakiri routing when multiple rules are in place (return NEXT
instead of CONTINUE)
* Fixed curl crashing master on slow dns responses (Łukasz Mierzwa)
* Removed PTRACE check in uwsgi.h (it is no more needed since uWSGI 1.0)
* Fixed -print-sym
* Added a newline in -cflags
* Improved python3 detection and compilation
* Fixed Coro::AnyEvent loop engine (John Berthels)
* Rack api functions are now static
* Better fastcgi handling of big uploads
* Improved GCC usage on Darwin for Python non-apple builds
* Fixed XCLIENT usage in rawrouter
* Use the clang preprocessor instead of hardcoded 'cpp' when CC=clang is
used
* Set 16bit options to 65535 when higher values are requested
* Fixed virtualhosting (it is now compatible with 1.4 configurations)
* New features
* https://uwsgi-docs.readthedocs.org/en/latest/Changelog-1.9.13.html
* PyPy performance and features improvents
* Chunked input api
* Toward better third-party plugins management: the -dot-h option
* setmethod, seturi and setpathinfo routing action
* UWSGI_INCLUDES
* Improved set_user_harakiri api function
* -add-cache-item [cache ]KEY=VALUE
* the router_xmldir plugin
OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=13
default configuration file /etc/uwsgi/uwsgi.ini
- Update README to describe important changes
- Removed separate packages for plugins that have no uncommon requirements
- Update to 1.9.11
* Fixed Python 3 stdout/stderr buffering
* Fixed mule messages (@mulefunc is now reliable)
* Fixed SCRIPT_NAME handling in dynamic mode
* Fixed X-Sendfile with gzip static mode
* Fixed cache item maximum size with custom block size
* Fixed cache path handling
* Added the new high-performance PyPy plugin
* You can now avoid overlapping crons using --unique-cron. The uWSGI master
will track death of a single task, and until its death the same cron will
not be triggered
* A key/value variant of the --cron option is now available
* When using the cron2 option you are allowed to set a harakiri timeout for a
cron task. Just add harakiri=n to the options
* Added support for GNU Hurd
* A new offload engine named "memory" allows to offload memory transfers. The
cache router automatically supports it. To enable it just add
--offload-threads <n>
* An example websocket chat using Redis has been added to the repository
* You can now define a routing table to be executed as soon as you set the
HTTP status code in your plugin
* Generally the wsgi.file_wrapper callable expects a file-like object. PEP
333/3333 reports a special pattern when the object is not a file (call
read() until the object is consumed). uWSGI now supports this pattern (even
if in a hacky way)
* When using --http-keepalive you can now hold the connection open even if
OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=5