The NetBSD Project

CVS log for pkgsrc/www/py-uwsgi/distinfo

[BACK] Up to [cvs.NetBSD.org] / pkgsrc / www / py-uwsgi

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.47 / (download) - annotate - [select for diffs], Sun Feb 11 11:02:48 2024 UTC (8 weeks, 3 days ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2024Q1-base, pkgsrc-2024Q1, HEAD
Changes since 1.46: +4 -4 lines
Diff to previous 1.46 (colored) to selected 1.6 (colored)

py-uwsgi: updated to 2.0.24

uWSGI 2.0.24

Maintenance release

Changes
properly init cache for purge_lru (Alexandre Rossi)
fix linking with php8 (Remi Collet)
remove unused variables to fix compilation (László Károlyi)
fix function parameter type to avoid overflow in harakiri (Shai Bentov)
fix socket queue stats for ipv6 (Riccardo Magliocchetti)
fixup -Wformat-signedness warnings (Riccardo Magliocchetti)
Avoid strncpy from null in pyloader (Ben Kallus)
add clang to compile test matrix in ci (Riccardo Magliocchetti)

Revision 1.46 / (download) - annotate - [select for diffs], Thu Nov 2 09:05:50 2023 UTC (5 months, 1 week ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2023Q4-base, pkgsrc-2023Q4
Changes since 1.45: +4 -6 lines
Diff to previous 1.45 (colored) to selected 1.6 (colored)

py-uwsgi: updated to 2.0.23

uWSGI 2.0.23

Maintenance release

Changes
Add support for Python 3.12 (Ralf Ertzinger)
plugins/php: ini_entries is read-only since PHP 8.3 (Remi Collet)
Silence glibc warnings against pthread robust mutex functions (Riccardo Magliocchetti)
Fixup jvm library path detection (Riccardo Magliocchetti)
Use sysconfig if distutils is not available (Steve Kowalik, Terence D. Honles, Riccardo Magliocchetti)

Revision 1.45 / (download) - annotate - [select for diffs], Sun Oct 29 18:18:03 2023 UTC (5 months, 1 week ago) by wiz
Branch: MAIN
Changes since 1.44: +3 -1 lines
Diff to previous 1.44 (colored) to selected 1.6 (colored)

py-uwsgi: add Python 3.12 support

From https://github.com/unbit/uwsgi/pull/2542

Revision 1.44 / (download) - annotate - [select for diffs], Tue Aug 1 12:33:17 2023 UTC (8 months, 1 week ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2023Q3-base, pkgsrc-2023Q3
Changes since 1.43: +5 -5 lines
Diff to previous 1.43 (colored) to selected 1.6 (colored)

py-uwsgi: updated to 2.0.22

uWSGI 2.0.22

Changes

Add graceful harakiri to give more slack to workers in order to do cleanup actions (Filipe Felisbino) The following options have been added:
harakiri-graceful-timeout to control the timeout for the worker to attempt a graceful shutdown
harakiri-graceful-signal, to choose which signal to use for graceful harakiri (default: SIGTERM)
harakiri-graceful-queue-threshold in order to trigger harakiri only when the listen queue crosses a threshold
plugins/php: Fix PHP 8.2 compilation (Alexandre Rossi)
plugins/python: Use ×Ãackslashreplaceãàon stderr initialization (Nicolas Evrard)
Fix typo (Young Ziyi)
Fix use after free with DEBUG (Alexandre Rossi)
apache2/mod_proxy_uwsgi: stricter backend HTTP response parsing/validation (Eric Covener, via Freexian)
ci: update to ubuntu 20.04 since 18.04 is unsupported (Riccardo Magliocchetti)
plugins/rack: fix compilation with Ruby 3.1, this breaks compilation for Ruby < 2.x (Lalufu, Riccardo Magliocchetti)

Revision 1.43 / (download) - annotate - [select for diffs], Sun Feb 26 00:52:49 2023 UTC (13 months, 2 weeks ago) by joerg
Branch: MAIN
CVS Tags: pkgsrc-2023Q2-base, pkgsrc-2023Q2, pkgsrc-2023Q1-base, pkgsrc-2023Q1
Changes since 1.42: +3 -3 lines
Diff to previous 1.42 (colored) to selected 1.6 (colored)

Reimplement get_memusage for NetBSD to actually work. Bump revision.

Revision 1.42 / (download) - annotate - [select for diffs], Wed Nov 2 07:26:47 2022 UTC (17 months, 1 week ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2022Q4-base, pkgsrc-2022Q4
Changes since 1.41: +3 -3 lines
Diff to previous 1.41 (colored) to selected 1.6 (colored)

py-uwsgi: add links to upstream pull request to patches

Revision 1.41 / (download) - annotate - [select for diffs], Wed Nov 2 07:20:58 2022 UTC (17 months, 1 week ago) by wiz
Branch: MAIN
Changes since 1.40: +4 -4 lines
Diff to previous 1.40 (colored) to selected 1.6 (colored)

py-uwsgi: update to 2.0.21.

Changes

    Add PY_SSIZE_T_CLEAN define for Python 3.10 support (Thea Flowers)
    Fix PHP 8 missing arginfo warnings (аман еогиевки)
    Do not collide with the builtin compile function in uwsgiconfig.py (Jonathan Rosser)
    add uwsgi fork hooks to update internal interpreter state in python plugin (Tahir Butt)
    Properly call .close() as mandated by WSGI specs in python plugin (Florian Apolloner)
    Fix compilation with PHP 8.1 (Riccardo Magliocchetti)
    Fix memory corruption for uwsgi_cache_* in php plugin (aszlig)
    Cleanup usage of threading.current_thread (Hugo van Kemenade)
    Fix concurrency issues on build (Peter Law)
    Fix compilation on MacOS (Shachar Itzhaky)
    Fix segfault from gevent switch (Gavin Jeong)
    Fix php-app for PHP 8.1 (cuchac)
    make dev version PEP-0440 compliant (joshua.biagio)
    Add Python 3.11 support (Victor Stinner)
    Ensure to link against rt when statically linking the python plugin to libpython (Denis Dowling)
    Refactor CI to run tests in parallel (Nicola Martino)
    Add missing parens in plugins/coroae/uwsgiconfig.py (Eleksir)

Revision 1.40 / (download) - annotate - [select for diffs], Tue Jan 25 10:30:50 2022 UTC (2 years, 2 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2022Q3-base, pkgsrc-2022Q3, pkgsrc-2022Q2-base, pkgsrc-2022Q2, pkgsrc-2022Q1-base, pkgsrc-2022Q1
Changes since 1.39: +6 -6 lines
Diff to previous 1.39 (colored) to selected 1.6 (colored)

py-uwsgi: update to 2.0.20.

Changes

    Switch default python for build to python3 (Riccardo Magliocchetti)
    Add support for PHP 8 (Riccardo Magliocchetti)
    Drop support for PHP < 7 as it is EOL since end of 2018 (Riccardo Magliocchetti)
    Fix segfaults when using ÅØsgi-env-behavior=holy (Antonio Cuni)
    Replace uwsgi.h system includes in core and proto dirs for Bazel (Serge Bazanski)
    gevent: fix compilation with clang11 (László Károlyi)
    Fix Python 3.9 deprecations warnings (Riccardo Magliocchetti)
    Add trove classifier for Python 3.9 (Adrian)
    Fix message in Log SIGINT/SIGTERM triggered kill_them_all (Delena Malan)
    Support 7 in weekedays as an alias for sunday to match crontab behaviour (Riccardo Magliocchetti)
    Document http-timeout default of 60 seconds (Etienne H)
    Add option to override python sys.executable using py-executable config
    Allow specifying an iteration to uwsgi::add_rb_timer (Luciano Rocha)
    Allow to compile with Python versions with minor version with 2+ digits (Cyrille Pontvieux)
    Take into account new naming for LIBPL since python 3.6 (ilrico)
    Added missing HTTP status codes messages (James Brown)
    Official support for Python 3.10

Revision 1.39 / (download) - annotate - [select for diffs], Tue Oct 26 11:30:50 2021 UTC (2 years, 5 months ago) by nia
Branch: MAIN
CVS Tags: pkgsrc-2021Q4-base, pkgsrc-2021Q4
Changes since 1.38: +2 -2 lines
Diff to previous 1.38 (colored) to selected 1.6 (colored)

www: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Not committed (merge conflicts):
www/nghttp2/distinfo

Unfetchable distfiles (almost certainly fetched conditionally...):
./www/nginx-devel/distinfo array-var-nginx-module-0.05.tar.gz
./www/nginx-devel/distinfo echo-nginx-module-0.62.tar.gz
./www/nginx-devel/distinfo encrypted-session-nginx-module-0.08.tar.gz
./www/nginx-devel/distinfo form-input-nginx-module-0.12.tar.gz
./www/nginx-devel/distinfo headers-more-nginx-module-0.33.tar.gz
./www/nginx-devel/distinfo lua-nginx-module-0.10.19.tar.gz
./www/nginx-devel/distinfo naxsi-1.3.tar.gz
./www/nginx-devel/distinfo nginx-dav-ext-module-3.0.0.tar.gz
./www/nginx-devel/distinfo nginx-rtmp-module-1.2.2.tar.gz
./www/nginx-devel/distinfo nginx_http_push_module-1.2.10.tar.gz
./www/nginx-devel/distinfo ngx_cache_purge-2.5.1.tar.gz
./www/nginx-devel/distinfo ngx_devel_kit-0.3.1.tar.gz
./www/nginx-devel/distinfo ngx_http_geoip2_module-3.3.tar.gz
./www/nginx-devel/distinfo njs-0.5.0.tar.gz
./www/nginx-devel/distinfo set-misc-nginx-module-0.32.tar.gz
./www/nginx/distinfo array-var-nginx-module-0.05.tar.gz
./www/nginx/distinfo echo-nginx-module-0.62.tar.gz
./www/nginx/distinfo encrypted-session-nginx-module-0.08.tar.gz
./www/nginx/distinfo form-input-nginx-module-0.12.tar.gz
./www/nginx/distinfo headers-more-nginx-module-0.33.tar.gz
./www/nginx/distinfo lua-nginx-module-0.10.19.tar.gz
./www/nginx/distinfo naxsi-1.3.tar.gz
./www/nginx/distinfo nginx-dav-ext-module-3.0.0.tar.gz
./www/nginx/distinfo nginx-rtmp-module-1.2.2.tar.gz
./www/nginx/distinfo nginx_http_push_module-1.2.10.tar.gz
./www/nginx/distinfo ngx_cache_purge-2.5.1.tar.gz
./www/nginx/distinfo ngx_devel_kit-0.3.1.tar.gz
./www/nginx/distinfo ngx_http_geoip2_module-3.3.tar.gz
./www/nginx/distinfo njs-0.5.0.tar.gz
./www/nginx/distinfo set-misc-nginx-module-0.32.tar.gz

Revision 1.38 / (download) - annotate - [select for diffs], Thu Oct 7 15:08:33 2021 UTC (2 years, 6 months ago) by nia
Branch: MAIN
Changes since 1.37: +1 -2 lines
Diff to previous 1.37 (colored) to selected 1.6 (colored)

www: Remove SHA1 hashes for distfiles

Revision 1.37 / (download) - annotate - [select for diffs], Thu Aug 5 13:22:30 2021 UTC (2 years, 8 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2021Q3-base, pkgsrc-2021Q3
Changes since 1.36: +6 -10 lines
Diff to previous 1.36 (colored) to selected 1.6 (colored)

py-uwsgi: updated to 2.0.19.1

uWSGI 2.0.19.1

Changes

Reverted CGI chunked encoding support
Fixed bug with WSGI responses returning None


uWSGI 2.0.19

Changes

Update travis to xenial
Fix segfault in logsocket plugin
Backport Coverity fixes from master
Fix Python 3.7 warnings
Fix uwsgi.workers() leak in Python plugin
Backport redislog plugin 32-bit build fixes
Fix stack overflow in core/rpc
Fix build with spaces in the path
Add missing initialization for zend_file_handle in php plugin
Build Python 3.7 and 3.8 plugins in CI
Add Trove classifiers for Python 3.7 and 3.8
Graceful shutdown for vassals
Improve yaml parsing with libyaml
Add smart-daemon2 option to notify daemon of master reloading
Do not chroot multiple times when root
Support io.BytesIO with wsgi.file_wrapper
Add websocket continuation frames support
Fix compilation with gevent 1.5.0
Fix PSGI plugin build with gcc 10
Get rid of paste.script dependency in pypy/python plugins
Improve performance for santitizing file descriptors with cgi plugin
Fix offload-threads with honour-range
Fix logging packet size length overflow
Fix possible deadlock in install
Fix parsing of http port for ipv6
Fix impossibility of determining the end of the chunked stream with psgi plugin
Fix parsing of http-socket port for ipv6
Add chunked request decoding to the CGI plugin
Add add max-worker-lifetime-delta to reload workers with a delta

Revision 1.36 / (download) - annotate - [select for diffs], Sun May 5 17:55:34 2019 UTC (4 years, 11 months ago) by wiedi
Branch: MAIN
CVS Tags: pkgsrc-2021Q2-base, pkgsrc-2021Q2, pkgsrc-2021Q1-base, pkgsrc-2021Q1, pkgsrc-2020Q4-base, pkgsrc-2020Q4, pkgsrc-2020Q3-base, pkgsrc-2020Q3, pkgsrc-2020Q2-base, pkgsrc-2020Q2, pkgsrc-2020Q1-base, pkgsrc-2020Q1, pkgsrc-2019Q4-base, pkgsrc-2019Q4, pkgsrc-2019Q3-base, pkgsrc-2019Q3, pkgsrc-2019Q2-base, pkgsrc-2019Q2
Changes since 1.35: +2 -2 lines
Diff to previous 1.35 (colored) to selected 1.6 (colored)

py-uwsgi: fix build on SunOS

Revision 1.35 / (download) - annotate - [select for diffs], Wed Mar 6 13:07:58 2019 UTC (5 years, 1 month ago) by joerg
Branch: MAIN
CVS Tags: pkgsrc-2019Q1-base, pkgsrc-2019Q1
Changes since 1.34: +5 -1 lines
Diff to previous 1.34 (colored) to selected 1.6 (colored)

Add uwsgi-sse_offload option for integrating the redis pubsub to Server
Sent Event bridge patch. Defaults to off.

Revision 1.34 / (download) - annotate - [select for diffs], Wed Feb 27 12:15:54 2019 UTC (5 years, 1 month ago) by adam
Branch: MAIN
Changes since 1.33: +5 -5 lines
Diff to previous 1.33 (colored) to selected 1.6 (colored)

py-uwsgi: updated to 2.0.18

uWSGI 2.0.18:
Fixed support for Python 3.7
Allow to use autoport (socket :0) with custom socket backlog
pyuwsgi ported to python3
pyuwsgi packages fixes
pyuwsginossl build configuration for building pyuwsgi without ssl support
Fix unix socket inheritance after reload on FreeBSD
Fix crashes with ÅØsgi-env-behavior=holy
Fix invalid free in python plugin
Fix compilation warnings with gcc-8
Fix spooler python references
DonãàÑÕ generate build warnings in systemd_logger
Fix segmentation fault during worker shutdown

Revision 1.33 / (download) - annotate - [select for diffs], Fri Aug 10 07:18:29 2018 UTC (5 years, 8 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q4-base, pkgsrc-2018Q4, pkgsrc-2018Q3-base, pkgsrc-2018Q3
Changes since 1.32: +5 -5 lines
Diff to previous 1.32 (colored) to selected 1.6 (colored)

py-uwsgi: updated to 2.0.17.1

Changes 2.0.17.1:
Fixed memory leak in HTTPS_CLIENT_CERTIFICATE
TLSv1 is now disabled by default (you can re-enable it with ssl-enable-tlsv1 at your own risk)
Improved daemons throttle system
Add ãà×Ôecsãàlog formatting variable
Improved snprintf() usage to be OpenBSD-friendly
Improved glibc crypt/crypt_r management
Fixed websocket pong timeout check
Add the ãà×­icenseãàclassifier to setup.py
Add support for php user.ini
Official support for Python 3.7

Revision 1.32 / (download) - annotate - [select for diffs], Mon Mar 19 09:28:04 2018 UTC (6 years ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q2-base, pkgsrc-2018Q2, pkgsrc-2018Q1-base, pkgsrc-2018Q1
Changes since 1.31: +5 -5 lines
Diff to previous 1.31 (colored) to selected 1.6 (colored)

py-uwsgi: updated to 2.0.17

Changes 2.0.17:
The Emperor throttling subsystem does not make use anymore of blocking functions, like usleep(), this should fix stats serving and should improve vassals startup time
[Security/PHP] enforce DOCUMENT_ROOT check when using ãàÅÑhp-docroot to avoid directory traversal
added ãàÅÔhutdown-sockets to improve graceful shutdowns

Revision 1.31 / (download) - annotate - [select for diffs], Tue Feb 13 08:34:03 2018 UTC (6 years, 1 month ago) by adam
Branch: MAIN
Changes since 1.30: +5 -5 lines
Diff to previous 1.30 (colored) to selected 1.6 (colored)

py-uwsgi: updated to 2.0.16

uWSGI 2.0.16
Security
[CVE-2018-6758] Stack-based buffer overflow in core/utils.c:uwsgi_expand_path()

Changes
Backported early_post_jail plugin hook (Bjørnar Ness)
Fixed ipv6 suupport for http-socket (James Brown)
Enable execinfo on DragonFly BSD (Aaron LI)
Fix inet_ntop buffer size (Orivej Desh)
Add worker running time metrics (Serge/yasek)
Backported safe-pidfile, safe-pidfile2 (Nate Coraor)
Stop using libxml2 by default on osx
Fixed uwsgi_kvlist_parse signature
Backport http range fixes from master (Curtis Maloney, Sokolov Yura)
relicensed mod_proxy_uwsgi to Apache 2.0
logging: Add ${millis} support to json encode
plugins/router_xmldir: fixup invalid locale check (Riccardo Magliocchetti)
Add ssl-verify-depth flag to set the max Client CA chain length (Paul Tagliamonte)
Allow to override build date (Bernhard M. Wiedemann)
Python 3 plugin: improved thread names handling (Jyrki Muukkonen, Mark Meyer)
Added uwsgi_resolve_ip for redis host (ahmbas)
plugins/gevent: Fix signal handlers (Maslov Alexander)
Write x509 DER to the uwsgi buffer (Paul Tagliamonte)
plugin/http: Fix compilation (Melvyn Sopacua)
Fixed emperor throttling system (Jeremy Hiatt)
Fix application loading without Plack after excluding ãàfrom @INC in new Perl versions (Anton Petrusevich)
Fix MULE MSG QUEUE IS FULL message hint (Eugene Tataurov)
Build System: support k_minor has a _xxx suffix (TOGO Li)
Fixed drop-after-* options (Robert DeRose)
Add mule_send_msg success indicator (Josh Tiras)
Properly check item size in uwsgi_queue_push (Josh Tiras)
FastRouter / HTTP Router can now have a ãàÏÇallbackãàkey configured
HTTP Router now supports post-buffer, just like FastRouter
Fix handling of env in embedded dict in Python plugin (could cause segfaults in single thread mode)
Add support for Brotli (.br) with ãàÅÔtatic-gzip
Back-ported HTTP/1.1 support (ãàÅÉttp11-socket) from 2.1

Revision 1.30 / (download) - annotate - [select for diffs], Fri Jun 23 15:56:45 2017 UTC (6 years, 9 months ago) by joerg
Branch: MAIN
CVS Tags: pkgsrc-2017Q4-base, pkgsrc-2017Q4, pkgsrc-2017Q3-base, pkgsrc-2017Q3, pkgsrc-2017Q2-base, pkgsrc-2017Q2
Changes since 1.29: +2 -2 lines
Diff to previous 1.29 (colored) to selected 1.6 (colored)

Avoid sys/user.h on NetBSD.

Revision 1.29 / (download) - annotate - [select for diffs], Sat Apr 8 12:04:27 2017 UTC (7 years ago) by adam
Branch: MAIN
Changes since 1.28: +5 -5 lines
Diff to previous 1.28 (colored) to selected 1.6 (colored)

uWSGI 2.0.15
Maintenance release

Issues
Unfortunately there are still 2 unfixed long standing bugs in this release:
* suwsgi protocol behind nginx does not work reliably when a request body is sent by the client (https://github.com/unbit/uwsgi/issues/1490). As we cannot reproduce it in uWSGI itself, we will start checking in the nginx module too
* There are reports of the ãà×Éolyãàwsgi env allocator crashing on specific conditions, this release includes a bunch of workarounds but they could not be enough

Changes
* workaround for the holy allocator for avoiding crashes with newrelic (see Issues notes)
* avoid time overflow in request logs during (even minimal) clock skew
* fixed python logger with python3
* fixed catch-exceptions with python3
* backported ãà×ÅonãàÑÕ clone $env->{ãàÏÑsgix.ioãàÑÞ on ãàϱSGI cancelãàÒä
* added support for authentication in the redis logger
* added the spinningfifo action hook to the core
* fixed compilation with php 7.1
* correctly returns error code 22 in lazy_apps + master_mode
* fixed compilation for OpenSSL 1.1
* Add a ãàÅÔkip-atexit-teardown option to skip perl/python teardown
* fixed static file serving over https-socket

Revision 1.28 / (download) - annotate - [select for diffs], Fri Nov 4 21:38:59 2016 UTC (7 years, 5 months ago) by maya
Branch: MAIN
CVS Tags: pkgsrc-2017Q1-base, pkgsrc-2017Q1, pkgsrc-2016Q4-base, pkgsrc-2016Q4
Changes since 1.27: +6 -10 lines
Diff to previous 1.27 (colored) to selected 1.6 (colored)

py-uwsgi: update to 2.0.14

2.0.14 changes:
    backported gevent-early-monkey-patch (jianbin-wei)
    Fixed OpenBSD version check (Pavel Korovin)
    PSGI/Perl cache api fixes (Alexander Demenshin)
    Correctly decode PATH_INFo in router_rewrite plugin (Ben Hearsum)
    add uwsgi.accepting() for chain-reload + worker-override combo (enkore)
    fixed workers killing when in cheaper modes (shoham-stratoscale)
    added ãàÅÄgi-safe option (nnnn20430)
    Implemented graceful reload for COROAE plugin (aleksey-mashanov)
    Added ãàÅÑhp-fallback2, ãàÅÑhp-fallback-qs (Felicity unixwitch)
    Added ipv4in and ipv6in routing rules (Felicity unixwitch)
    Fixed readline support in python3 when working interactively (Anthony Sottile)
    Implement touch-reloading for mules and spoolers (Alexandre Bonnetain)
    add request_start timestamp in stats (Ben Plotnick)
    Fixed double free in uwsgi_routing_func_rewrite (William Orr)
    Various mod_proxy_uwsgi fixes (Ya-Lin Huang)
    support for ãàÏÏo-answerãàin PSGI (Anton Petrusevich)
    added php-constant option (аман еогиевки [gdamjan])
    added the stdio logger (аман еогиевки [gdamjan])
    spooler: fix reading inconsistent data (Pavel Patrin)
    Removed -WError from the build procedure (Riccardo Magliocchetti, suggested by Ian Denhardt)
    The usual amount of coverity-based fixes (Riccardo Magliocchetti)

2.0.13.1:

    Fixed support for python 2.5 and python 2.6
    Fixed support for older glibc
    reverted EPOLLEXCLUSIVE patch, requires more investigation

2.0.13:

    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 ÅÄgi-close-stdin-on-eof (Roberto De Ioris)

2.0.12:

Bugfixes

    ãàÏÓpcvarãàrouting action correctly returns NEXT on empty response
    uwsgiconfig: fix handling of empty keys in python3 (Simone Basso)
    plugins/alarm_speech: fix AppKit spelling to support case-sensitive filesystems (Andrew Janke)
    Fix inheriting INET address 0.0.0.0 (INADA Naoki)
    core/xmlconf: correctly initialize libxml2 (Riccardo Magliocchetti)
    Pass LIBDIR to linker in python plugin (Borys Pierov)
    Platforms-related build fixes for pty, forkptyrouter and mono plugins (Jonas Smedegaard and Riccardo Magliocchetti)


New Features and Backports
The custom worker api

Finally you are able to override the uWSGI processing model to completely get control of it. This is very similar to what you can do in projects like gunicorn (and its integration with tornado or gevent). Obviously native plugins are still the best approach (they allow integration with uWSGI api and states), but in some case you may want to use uWSGI process management facilities and let your app do the rest of the work.

Currently only the python plugin supports ãà×Ðverridingãàof workers, an aiohttp (asyncio) example module is available:

https://github.com/unbit/uwsgi-docs/blob/master/WorkerOverride.rst
ãàÅØsgi-disable-file-wrapper

This option disables the wsgi.file_wrapper optimization of the WSGI standard. In some corner case this is the only trick to avoid errors.
Official PHP 7 support

PHP 7 is now officially supported in the php plugin.
uwsgi.spooler_get_task api (Credits: Alexandre Bonnetain)

This patch allows you to easily parse spooler files.

Check the example/test here:

https://github.com/unbit/uwsgi/blob/master/t/spooler/read.py
ãàÅÊf-hostname-match (Credits: Alexandre Bonnetain)

This options for config logic allows you to define options only when a regexp over the hostname matches:

[uwsgi]
if-hostname-match = ^prod
  threads = 20
endif =


2.0.11.2:

Bugfixes

    OSX 10.11 supports TCP_FASTOPEN
    fixed http-socket parser state after harakiri
    fixed threaded request logger
    fixed fastrouter subscriptions modifiers
    fixed alarm backlog

2.0.11.1:

Bugfixes

    fixed HTTPS router resource deallocation and fiel descriptors leak
    do not spit out ssl errors when errno is 0

New Features
The unix_signal hook

You can now remap UNIX signals to specific functions symbols

2.0.11:

Bugfixes

    [pypy] fixed misuse of ffi.string
    fixed detection for gcc 5 (jimfunk)
    fixed shared sockets for gateways
    [psgi] Changed abs to labs because offset is declared as a long (Peter H. Ezetta)
    add null terminator to uwsgi_get_dot_h() and uwsgi_config_py() (Jay Oster)
    fixed thread waiting during stop/restart (Kaiwen Xu)
    fixed chain reloading verbosity
    [python] fixed spooler job reference counting (Curtis Maloney)
    various static analysis improvements (Riccardo Magliocchetti)
    fixed sharedarea support for very big ranges
    fixed gzip transformation for zero-sized responses (Curtis Maloney)
    fixed management of https client certificate authentication (Vladimir Didenko)
    fixed OpenBSD build
    fixed TMPFILE permissions

New Features
The mem_collector thread

Evil memory monitors (like ãàÅÆvil-reload-on-rss) are now asynchronously managed by a dedicated thread.

This solves the issue of runaway processes not catched by the master.
fixpathinfo routing action

This is another step in removing the need of the infamous uwsgi_modifier1 30 relic.

This routing action assumes the PATH_INFO cgi var has the SCRIPT_NAME part included.

This action allows you to set SCRIPT_NAME in nginx without bothering to rewrite the PATH_INFO (something nginx cannot afford)

[uwsgi]
; blindly assumes PATH_INFO is clobbered with SCRIPT_NAME
route-run = fixpathinfo:

uwsgi[sor] and time[micros] routing vars

This two new vars exposes the start of the current request (in micros) and the current time (again in micros)

[uwsgi]
route-run = log:request started at ${uwsgi[sor]}
route-run = log:current micros time is ${time[micros]}

wait-for-socket

This works like wait-for-fs/iface/file/dir

The spawn of the instance is suspended until the specified tcp/unix socket is ready.

You can use it to synchronize vassals spawn (like stopping a vassal until a postgresql server has been spawned)
wait_for hooks

All of the wait-for-* functions can now be used as a hook:

[uwsgi]
; wait for postgres soon after privileges drop
hook-as-user = wait_for_socket:127.0.0.1:5432

Revision 1.27 / (download) - annotate - [select for diffs], Mon Jan 11 22:57:00 2016 UTC (8 years, 3 months ago) by joerg
Branch: MAIN
CVS Tags: pkgsrc-2016Q3-base, pkgsrc-2016Q3, pkgsrc-2016Q2-base, pkgsrc-2016Q2, pkgsrc-2016Q1-base, pkgsrc-2016Q1
Changes since 1.26: +5 -1 lines
Diff to previous 1.26 (colored) to selected 1.6 (colored)

Avoid incrementing the same variable in the for body and at the end of
the loop. The code is correct, but triggers a useful clang 3.8 warning.

Revision 1.26 / (download) - annotate - [select for diffs], Wed Nov 4 02:47:31 2015 UTC (8 years, 5 months ago) by agc
Branch: MAIN
CVS Tags: pkgsrc-2015Q4-base, pkgsrc-2015Q4
Changes since 1.25: +2 -1 lines
Diff to previous 1.25 (colored) to selected 1.6 (colored)

Add SHA512 digests for distfiles for www category

Problems found locating distfiles:
	Package haskell-cgi: missing distfile haskell-cgi-20001206.tar.gz
	Package nginx: missing distfile array-var-nginx-module-0.04.tar.gz
	Package nginx: missing distfile encrypted-session-nginx-module-0.04.tar.gz
	Package nginx: missing distfile headers-more-nginx-module-0.261.tar.gz
	Package nginx: missing distfile nginx_http_push_module-0.692.tar.gz
	Package nginx: missing distfile set-misc-nginx-module-0.29.tar.gz
	Package nginx-devel: missing distfile echo-nginx-module-0.58.tar.gz
	Package nginx-devel: missing distfile form-input-nginx-module-0.11.tar.gz
	Package nginx-devel: missing distfile lua-nginx-module-0.9.16.tar.gz
	Package nginx-devel: missing distfile nginx_http_push_module-0.692.tar.gz
	Package nginx-devel: missing distfile set-misc-nginx-module-0.29.tar.gz
	Package php-owncloud: missing distfile owncloud-8.2.0.tar.bz2

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.

Revision 1.25 / (download) - annotate - [select for diffs], Mon Apr 6 02:35:54 2015 UTC (9 years ago) by rodent
Branch: MAIN
CVS Tags: pkgsrc-2015Q3-base, pkgsrc-2015Q3, pkgsrc-2015Q2-base, pkgsrc-2015Q2
Changes since 1.24: +5 -4 lines
Diff to previous 1.24 (colored) to selected 1.6 (colored)

Fix build for OpenBSD and Bitrig (from sevan@'s report).

Revision 1.24 / (download) - annotate - [select for diffs], Fri Apr 3 15:21:59 2015 UTC (9 years ago) by rodent
Branch: MAIN
Changes since 1.23: +4 -4 lines
Diff to previous 1.23 (colored) to selected 1.6 (colored)

uWSGI 2.0.10

[20150317]
Bugfixes

    Don't lower security standards with gcc 4.9 (Riccardo Magliocchetti)
    Perl/PSGI make sure that at least two params are passed to xs_input_seek (Ivan Kruglov)
    Per/PSGI fixed multiple interpreters usage
    spooler: fixed scandir usage
    fixed exception handler arguments management
    fixed 'log-master' +  'daemonize2' disables all logging
    fixed http Range header management

New Features
safeexec hook

this is like 'exec' but do not exit on error even if the executed command returns a non-zero value
backported --emperor-wrapper-fallback and --emperor-wrapper-override

the --emperor-wrapper-fallback option allows you to specify an alternative binary to execute when running a vassal and the default binary_path is not found (or returns an error). (you can specify it multiple times)

The --emperor-wrapper-override is similar but 'overrides' the default wrapper (you can specify it multiple times)
added support for UNIX sockets to rsyslog

The rsyslog logger can now get a unix socket as address (arguments starting with a slash are recognized as a unix path)
forcecl transformation

this transformation works like 'fixcl' but generates the Content-Length header even if Content-Length has been listed for removal.

Revision 1.23 / (download) - annotate - [select for diffs], Sat Jan 10 22:26:54 2015 UTC (9 years, 3 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2015Q1-base, pkgsrc-2015Q1
Changes since 1.22: +4 -4 lines
Diff to previous 1.22 (colored) to selected 1.6 (colored)

Changes 2.0.9:
Bugfixes:
fixed mod_proxy_uwsgi for non-blocking mode
fixed master-fifo + cheaper
fixed leak on error in bind_to_unix
atexit hooks works in cheaped workers too
atexit hooks works in gevent mode too during shutdown
fixed carbon command line option value after reload
do not honour Emperor throttling on the first run
fixed Mono plugin
fixed peer name in corerouters
fixed stop signal for daemons
varios ssl/tls fixes in https/spdy router
fixed python3 ãàÅÑy-auto-reload-ignore
fixed modifiers in corerouters
support for yajl from homebrew (OSX)
psgi: Ensure that we call any DESTROY hooks on psgix.harakiri.commit
systemdlogger: fix compilation with -Werror=format-security
fixed unmasked websockets
perl fixed latent refcounting bug

New Features:
Improved PyPy support for Linux
Fastrouter post-buffering
Perl uwsgi::opt
ãàÅÑull-header
active-workers signal target
httpdumb routing action

Revision 1.22 / (download) - annotate - [select for diffs], Sun Nov 30 16:56:58 2014 UTC (9 years, 4 months ago) by rodent
Branch: MAIN
CVS Tags: pkgsrc-2014Q4-base, pkgsrc-2014Q4
Changes since 1.21: +4 -4 lines
Diff to previous 1.21 (colored) to selected 1.6 (colored)

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 router to 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 full
    clear_on_full will completely clear the cache as soon as it is full
    no_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 monolithic uwsgi 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 available in the HTTP world for forwarded sessions (http://tools.ietf.org/html/rfc7239) this release adds support for the X-Forwarded-Proto header, automatically setting the request scheme accordingly.

Revision 1.21 / (download) - annotate - [select for diffs], Wed Sep 10 16:02:33 2014 UTC (9 years, 7 months ago) by wiedi
Branch: MAIN
CVS Tags: pkgsrc-2014Q3-base, pkgsrc-2014Q3
Changes since 1.20: +4 -4 lines
Diff to previous 1.20 (colored) to selected 1.6 (colored)

Update py-uwsgi to 2.0.7

uWSGI 2.0.7
===========

Changelog [20140905]

Bugfixes
********

- fixed counters in statsd plugin (Joshua C. Forest)
- fixed caching in php plugin (Andrew Bevitt)
- fixed management of system users starting with a number
- fixed request body readline using memmove instead of memcpy (Andrew Wason)
- ignore "user" namespace in setns (still a source of problems)
- fixed Python3 rpc bytes/string mess (result: we support both)
- do not destroy the Emperor on failed mount hooks
- fixed symbol lookup error in the Mono plugin on OS X (Ventero)
- fixed fastcgi and scgi protocols error when out of buffer happens
- fixed solaris/smartos I/O management
- fixed 2 memory leaks in the rpc subsystem (Riccardo Magliocchetti)
- fixed rados plugin PUT method (Martin Mlyná)
- fixed multiple python mountpoints with multiple threads in cow mode
- stats UNIX socket is now deleted by vacuum
- fixed off-by-one corruption in cache LRU mode
- force single-cpu build in cygwin (Guido Notari)


New Features and improvements
*****************************

allow calling the spooler from every cpython context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

At Europython 2014, Ultrabug (a uWSGI contributor and packager) asked for the possibility to spool tasks directly from a greenlet.

Done.

store_delete cache2 option
^^^^^^^^^^^^^^^^^^^^^^^^^^

Author: goir

The store_delete flag of the --cache2 option, allows you to force the cache engine to automatically remove an invalid
backing store file.

file logger rotation
^^^^^^^^^^^^^^^^^^^^

Author: Riccardo Magliocchetti

The `file` logger has been extended to allow the use of rotation (the same system used by the non-pluggable --logto):

https://github.com/unbit/uwsgi/commit/0324e5965c360dccfb873ffe351dec88ddab59c5

vassals plugin hooks
^^^^^^^^^^^^^^^^^^^^

The plugin have has been extended with two new hooks: vassal and vassal_before_exec.

Both allows to customize a vassal soon after its process has been generated.

The first third-party plugin using it is the 'apparmor' one:

https://github.com/unbit/uwsgi-apparmor

allowing you to apply an apparmor profile to a vassal


Broodlord improvements
^^^^^^^^^^^^^^^^^^^^^^

The broodlord subsystem has been improved with a new option: --vassal-sos that automatically ask for reinforcement when all of the workers of an instance are busy.

In addition to this a sysadmin can now manually ask for reinforcement sending the 'B' commando to the master fifo of an instance.

Revision 1.20 / (download) - annotate - [select for diffs], Thu Aug 7 05:34:35 2014 UTC (9 years, 8 months ago) by rodent
Branch: MAIN
Changes since 1.19: +4 -4 lines
Diff to previous 1.19 (colored) to selected 1.6 (colored)

uWSGI 2.0.6

Changelog [20140701]
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
    remove the old FIFO socket from the event queue when recreating it

New features
The new Rados plugins

The rados plugin has been improved and stabilized, and now it is considered usable in production.

Async modes and multithreading correctly works, and support for uploading objects (via PUT) and creating new pools (MKCOL) has been added.

Expect webdav support in uWSGI 2.1

Docs have been updated: http://uwsgi-docs.readthedocs.org/en/latest/Rados.html
-if-hostname

This is a configuration logic for including options only when the specified hostname matches:

[uwsgi]
if-hostname = node1.local
  socket = /tmp/socket1.socket
endif =

if-hostname = node2.local
  socket = /var/run/foo.socket
endif =

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.

Updated docs: http://uwsgi-docs.readthedocs.org/en/latest/Apache.html#mod-proxy-uwsgi
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:

[uwsgi]
uid = @(callint://get_my_uid)
gid = @(callint://get_my_gid)

-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

For mysterious reasons the opcode caching of php5.5 is not enabled in the embed sapi. This option (set it to 'apache' if you want) allows you to fake the opcode caching engine forcing it to enable itself.
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 daemons need to chdir()

Revision 1.19 / (download) - annotate - [select for diffs], Sun Jun 15 05:19:57 2014 UTC (9 years, 9 months ago) by rodent
Branch: MAIN
CVS Tags: pkgsrc-2014Q2-base, pkgsrc-2014Q2
Changes since 1.18: +4 -4 lines
Diff to previous 1.18 (colored) to selected 1.6 (colored)

2.0.5

Bugfixes

    fixed support for repeated headers in lua plugin
    fixed support for embedding config in OpenBSD and NetBSD
    various fixes in the curl-based plugins
    fixed milliseconds-based waits
    fixed sharedarea poller
    fixed stats server json escaper
    fixed fastcgi parser and implemented eof management
    improved fast on-demand mode
    exclude avg_rt computation for static files
    fixed variables support in uwsgi internal router
    fixed websockets + keepalive ordering
    disable SIGPIPE management in corutines-based loop-engines
    fixed 64bit sharedarea management in 32bit systems
    honour chmod/chown-socket in fd0 mode
    hack for avoiding Safari iOS to make mess with keepalive
    fixed log setup when both --logto and --log2
    fixed mule_get_msg EAGAIN
    signal_pidfile returns the right error code
    fixed asyncio on OSX

New features
graceful reload of mule processes

SIGHUP is now sent to mules instead of directly killing them. You are free to trap/catch the signal in the code. If a mule does not die in the allowed "mercy time" (--mule-reload-mercy, default 60 seconds), SIGKILL will be sent.
return routing action

The new action will allow users to write simplified "break" clause.

For example, "return:403" is equivalent to "break:403 Forbidden", with response body "Forbidden".

The response body is quite useful for telling end users what goes wrong.
--emperor-no-blacklist

this new option, completely disables the blacklisting Emperor subsystem
Icecast2 protocol helpers

One of the upcoming unbit.com projects is a uWSGI based audio/video streaming server.

The plugin (should be released during europython 2014) already supports the Icecast2 protocol.

A bunch of patches have been added to the http router to support the icecast2 protocol.

For example the --http-manage-source option allows the HTTP router to honour SOURCE method requests, automatically placing them in raw mode.
--metrics-no-cores, --stats-no-cores, --stats-no-metrics

When you have hundreds (or thousands) of async cores, exposing metrics of them could be really slow.

Three new options have been added allowing you to disable the generation of core-related metrics and (eventually) their usage in the stats server.
sharedarea improvements

The sharedarea api continues to improve. Latest patches include support for mmapping device directly from the command line.

A funny way for testing it, is mapping the raspberrypi BCM2835 memory, the following example allows you to read the rpi system timer

uwsgi --sharedarea file=/dev/mem,offset=0x20003000,size=4096 ...

now you can read the 64bit value from the first (zero-based) sharedarea:

# read 64bit from 0x20003004
timer = uwsgi.sharedarea_read64(0, 0x04)

obviously, pay attention when accessing rpi memory, an error could crash the whole system !!!
UWSGI_GO_CHEAP_CODE

This exit code (15) can be raised by a worker to tell the master to not respawn it
PROXY1 support for the http router

The option --http-enable-proxy-protocol allows the HTTP router to understand PROXY1 protocol requests (like the ones made by haproxy or amazon elb)
reset_after_push for metrics

This metric attribute ensure that the matric value is reset to 0 (or its hardcoded initial_value) evry time the metric is pushed to some external system (like carbon, or statsd)
setremoteaddr

This routing action allows you to completely override the REMOTE_ADDR detected by protocol handlers:

[uwsgi]
; treat all requests as local
route-run = setremoteaddr:127.0.0.1

the resolve option

There are uWSGI options (or plugins) that do not automatically resolves dns name to ip addresses. This option allows you to map a placeholder to the dns resolution of a string:

[uwsgi]
; place the dns resolution of 'example.com' in the 'myserver' placeholder
resolve = myserver=example.com
subscribe2 = server=%(myserver),key=foobar

Revision 1.18 / (download) - annotate - [select for diffs], Thu Apr 24 00:18:52 2014 UTC (9 years, 11 months ago) by rodent
Branch: MAIN
Changes since 1.17: +4 -4 lines
Diff to previous 1.17 (colored) to selected 1.6 (colored)

Updated to latest release, 2.0.4, released a couple days ago. Changelogs:

uWSGI 2.0.4

Bugfixes

    fixed "cmime" routing var (Steve Stagg)
    allow duplicate headers in http parsers
    faster on_demand Emperor management
    fixed UWSGI_ADDITIONAL_SOURCES build option
    merge duplicated headers when SPDY is enabled
    fixed segfault for unnamed loggers
    -need-app works in lazy-apps mode
    fixed fatal hooks management

New features
The experimental asyncio loop engine (CPython >= 3.4)

asyncio (also known as 'tulip') is the new infrastructure for writing non-blocking/async/callback-based code with Python 3.

This plugin (experimental) allows you to use asyncio as the uWSGI loop engine

Docs: http://uwsgi-docs.readthedocs.org/en/latest/asyncio.html
httprouter advanced timeout management

The http router got 2 new specific timeout:

-http-headers-timeout <n> ; defines the timeout while waiting for http headers

-http-connect-timeout <n> ; defines the timeout when connecting to backend instances

they should help the sysadmin in improving security and availability

allow disabling cache warnings in -cache2

the 'ignore_full' keyval option has beed added to cache2. This will disable warnings when a cache is full
purge LRU cache feature by Yu Zhao (getcwd)

This new mode allows you to configure a cache to automatically expires least recently used (LRU) items when it is full.

Just add purge_lru=1 to your cache2 directive
support embedded config on FreeBSD

You can now embed config on FreeBSD systems:

http://uwsgi-docs.readthedocs.org/en/latest/Embed.html#step-2-embedding-the-config-file
rpc hook

Two new hooks have been added:

'rpc' -> call the specified rpc function (fails on error)

'rpcretry' -> call the specified rpc function (retry on error)
setmodifier1 and setmodifier2 routing actions

having to load the 'uwsgi' routing plugin just for setting modifiers was really annoying. This two routing actions (embedded in the core) allows you to dinamically set modifiers.
no_headers option for static router

keyval based static routing action can now avoid to rewrite response headers (useful for X-Sendfile), just add no_headers=1 to your keyval options.

uWSGI 2.0.3

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 (Æöar Arnfjöò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)

Revision 1.17 / (download) - annotate - [select for diffs], Sat Mar 1 19:12:23 2014 UTC (10 years, 1 month ago) by rodent
Branch: MAIN
CVS Tags: pkgsrc-2014Q1-base, pkgsrc-2014Q1
Changes since 1.16: +4 -4 lines
Diff to previous 1.16 (colored) to selected 1.6 (colored)

Updated to latest release, 2.0.2. From Changelog:

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\u2019t setsid() twice (credits: INADA Naoki)

New features and improvements
CGI plugin

The plugin has been improved to support streaming.

In addition to this the long-awaited async support is finally ready. Now you can
have CGI concurrency without spawning a gazillion of expensive threads/processes

Check: Running CGI scripts on uWSGI
PSGI loading improvements

The PSGI loader now tries to use Plack::Util::load_psgi() function instead of
simple eval. This addresses various inconsistences in the environment (like the
double parsing/compilation/execution of psgi scripts).

If the Plack module is not available, a simple do-based code is used (very
similar to load_psgi)

Revision 1.16 / (download) - annotate - [select for diffs], Mon Feb 17 01:01:12 2014 UTC (10 years, 1 month ago) by rodent
Branch: MAIN
Changes since 1.15: +5 -5 lines
Diff to previous 1.15 (colored) to selected 1.6 (colored)

Updated to latest release, 2.0.1. From Changelog:

(http://uwsgi-docs.readthedocs.org/en/latest/Changelog-2.0.1.html?highlight=changelog)

Bugfixes and improvements

 * due to a wrong prototype declaration, building uWSGI without SSL resulted in
   a compilation bug. The issue has been fixed.
 * a race condition preventing usage of a massive number of threads in the PyPy
   plugin has been fixed
 * check for heartbeat status only if heartbeat subsystem has been enabled
 * improved heartbeat code to support various corner cases
 * improved psgi.input to support offset in read()
 * fixed (and simplified) perl stacktrace usage
 * fixed sni secured subscription
 * CGI plugin does not require anymore that Status header is the first one
   (Andjelko Horvat)
 * fixed CPython mule_msg_get timeout parsing
 * allows embedding of config files via absolute paths
 * fixed symcall rpc
 * fixed a memory leak in CPython spooler api (xiaost)
 * The -no-orphans hardening has been brought back (currently Linux-only)
 * improved dotsplit router mode to reduce DOS risk
 * sub-Emperor are now loyal by default
 * fixed non-shared ruby 1.8.7 support
 * fixed harakiri CPython tracebacker
 * request vars are now correctly exposed by the stats server
 * support log-master for logfile-chown
 * improved legion reload
 * fixed tuntap netmask
 * fixed busyness plugin without metrics subsystem

New features

* uWSGI 2.0 is a LTS branch, so do not expect too much new features. 2.0.1 is
  the first maintainance release, so you still get a bunch of them (mainly
  features not complete in 2.0)
* Perl native Spooler support
* -alarm-backlog
* -close-on-exec2
* simple notifications subsystem
* pid namespace for daemons (Linux only)
* Resubscriptions
* filesystem monitor api
* support for yajl 1.0
* for-readline
* %i and %j magic vars
* -inject-before and -inject-after
* -http-server-name-as-http-host
* better Emperor's Ragnarok (shutdown procedure)
* PyPy paste support

Revision 1.15 / (download) - annotate - [select for diffs], Thu Jan 23 14:47:05 2014 UTC (10 years, 2 months ago) by wiz
Branch: MAIN
Changes since 1.14: +7 -8 lines
Diff to previous 1.14 (colored) to selected 1.6 (colored)

Update to 2.0 (python-3.x compatible) based on the wip package by othyro.

Changes:
uWSGI 2.0

Changelog [20131230] Important changes

Dynamic options have been definitely removed as well as the
broken_plugins directory Bugfixes and improvements

    improved log rotation do not rely on unix signals to print
    request status during harakiri added magic vars for uid and
    gid various Lua fixes a tons of coverity-governed bugfixes made
    by Riccardo Magliocchetti

New features --attach-daemon2

this is a keyval based option for configuring external daemons.

Updated docs are: :doc:`AttachingDaemons` Linux setns() support

One of the biggest improvements in uWSGI 1.9-2.0 has been the total
support for Linux namespaces.

This last patch adds support for the setns() syscall.

This syscall allows a process to "attach" to a running namespace.

uWSGI instances can exposes their namespaces file descriptors
(basically they are the files in /proc/self/ns) via a unix socket.

External instances connects to that unix socket and automatically
enters the mapped namespace.

to spawn an instance in "namespace server mode", you use the
--setns-socket <addr> option

uwsgi --setns-socket /var/run/ns.socket --unshare net,ipc,uts ...

to attach you simply use --setns <addr>

uwsgi --setns /var/run/ns.socket ...

Updated docs: :doc:`Namespaces` "private" hooks

When uWSGI runs your hooks, it verbosely print the whole hook action
line. This could be a security problem in some scenario (for example
when you run initial phases as root user but allows unprivileged
access to logs).

Prefixing your action with a '!' will suppress full logging:

[uwsgi] hook-asap = !exec:my_secret_command

Support for yajl library (JSON parser)

Til now uWSGI only supported jansson as the json parser required
for managing .js config files.

You can now use the yajl library (available in centos) as alternative
JSON parser (will be automatically detected) Perl spooler support

The perl/PSGI plugin can now be used as a spooler server:

uwsgi::spooler(sub {
     my $args = shift; print Dumper($args); return -2; });

The client part is still missing as we need to fix some internal
api problem.

Expect it in 2.0.1 ;) Gateways can drop privileges

Gateways (like http router, sslrouter, rawrouter, forkptyrouter
...) can now drop privileges independently by the master.

Currently only the http/https/spdy router exposes the new option
(--http-uid/--http-gid) Subscriptions-governed SNI contexts

The subscription subsystem now supports 3 additional keys (you can
set them with the --subscribe2 option):

sni_key

sni_cert

sni_ca

all of the takes a path to the relevant ssl files.

Revision 1.14 / (download) - annotate - [select for diffs], Sun Jan 5 03:46:11 2014 UTC (10 years, 3 months ago) by rodent
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored) to selected 1.6 (colored)

Fix patch header.

Revision 1.13 / (download) - annotate - [select for diffs], Sat Jan 4 13:56:01 2014 UTC (10 years, 3 months ago) by rodent
Branch: MAIN
Changes since 1.12: +8 -8 lines
Diff to previous 1.12 (colored) to selected 1.6 (colored)

Update to 1.4.10, the oldest version supported by upstream. See py-uwsgi in
-wip for the newest supported version. Partial ChangeLog:

 * 1.4.1

- fixed typos in corerouter plugins
- fixed offloading when the number of threads is higher than 1
- fixed static_maps for non-existent paths
- fixed uwsgi_connect() on modern Linux systems to reset the socket to blocking mode

 * 1.4

- gevent improvements
- improved http/https router and fastrouter
- Go official support
- a new set of infos are exported to the stats system
- improved systemd support
- log filtering and routing
- improved tracebacker
- offload transfer for static files, and network transfers
- matheval support
- plugins can be written in Obj-C
- smart attach daemon
- added support for PEP 405 virtualenvs
- rawrouter with xclient support
- internal routing plugin for cache

 * 1.3

- python tracebacker
- user-governed harakiri
- simplified external plugin development
- Linux namespace mountpoint improvements
- secured subscription system
- merged routers codebase (fastrouter, http, rawrouter)
- https support in the http router
- config report at the end of uWSGI build process
- improved subscription system (multicast and unix socket)
- custom options
- graceful reloads on shared sockets
- configurable log-master buffer size
- extreme-optimizations for the stats subsystem
- redislog and mongodblog plugins
- added python logger
- mongodb and postgres imperial monitors
- implemented psgix.logger and psgix.cleanup
- full rack spec compliance
- preliminary ipv6 support
- gevent graceful reloads
- support for multiple loggers and logformat
- lazy-apps to load apps after fork() but without changing reloading subsystem
- emperor heartbeat subsystem
- cheaper busyness plugin
- pluggable clock sources
- added router_rewrite and router_http plugins
- external spoolers
- support for section:// and fd:// loaders
- alarm subsystem (with curl and xmpp plugins)

Revision 1.12 / (download) - annotate - [select for diffs], Thu Jul 12 16:21:53 2012 UTC (11 years, 9 months ago) by roy
Branch: MAIN
CVS Tags: pkgsrc-2013Q4-base, pkgsrc-2013Q4, pkgsrc-2013Q3-base, pkgsrc-2013Q3, pkgsrc-2013Q2-base, pkgsrc-2013Q2, pkgsrc-2013Q1-base, pkgsrc-2013Q1, pkgsrc-2012Q4-base, pkgsrc-2012Q4, pkgsrc-2012Q3-base, pkgsrc-2012Q3
Changes since 1.11: +7 -6 lines
Diff to previous 1.11 (colored) to selected 1.6 (colored)

Update to uwsgi-1.2.4

Changes include:
Posix semaphore support for FreeBSD and NetBSD.
Improved syslog support.
Linux KSM and unshare support.
Threading improvements.

Revision 1.11 / (download) - annotate - [select for diffs], Tue May 15 12:56:38 2012 UTC (11 years, 10 months ago) by marino
Branch: MAIN
CVS Tags: pkgsrc-2012Q2-base, pkgsrc-2012Q2
Changes since 1.10: +4 -2 lines
Diff to previous 1.10 (colored) to selected 1.6 (colored)

PR#45840 www/py-uwsgi: Fix DragonFly Port

Revision 1.10 / (download) - annotate - [select for diffs], Mon Jan 9 07:08:25 2012 UTC (12 years, 3 months ago) by sbd
Branch: MAIN
CVS Tags: pkgsrc-2012Q1-base, pkgsrc-2012Q1
Changes since 1.9: +2 -1 lines
Diff to previous 1.9 (colored) to selected 1.6 (colored)

Disable automatic detection of any library's that do not have there
buildlink3.mk included.

Bump PKGREVISION

Revision 1.9 / (download) - annotate - [select for diffs], Mon Jan 9 07:07:10 2012 UTC (12 years, 3 months ago) by sbd
Branch: MAIN
Changes since 1.8: +1 -2 lines
Diff to previous 1.8 (colored) to selected 1.6 (colored)

Revert the below commit:

   Module Name:	pkgsrc
   Committed By:	sbd
   Date:		Sun Jan  8 04:06:35 UTC 2012

   Modified Files:
	   pkgsrc/www/py-uwsgi: Makefile distinfo
   Added Files:
	   pkgsrc/www/py-uwsgi/patches: patch-uwsgiconfig.py

   Log Message:
   Add missing devel/libuuid buildlink.

   Bump PKGREVISION


   To generate a diff of this commit:
   cvs rdiff -u -r1.10 -r1.11 pkgsrc/www/py-uwsgi/Makefile
   cvs rdiff -u -r1.7 -r1.8 pkgsrc/www/py-uwsgi/distinfo
   cvs rdiff -u -r0 -r1.1 pkgsrc/www/py-uwsgi/patches/patch-uwsgiconfig.py

Revision 1.8 / (download) - annotate - [select for diffs], Sun Jan 8 04:06:34 2012 UTC (12 years, 3 months ago) by sbd
Branch: MAIN
Changes since 1.7: +2 -1 lines
Diff to previous 1.7 (colored) to selected 1.6 (colored)

Add missing devel/libuuid buildlink.

Bump PKGREVISION

Revision 1.7 / (download) - annotate - [select for diffs], Sun Sep 25 20:09:00 2011 UTC (12 years, 6 months ago) by joerg
Branch: MAIN
CVS Tags: pkgsrc-2011Q4-base, pkgsrc-2011Q4, pkgsrc-2011Q3-base, pkgsrc-2011Q3
Changes since 1.6: +4 -4 lines
Diff to previous 1.6 (colored)

uwsgi-0.9.8.6:

- fixed python --optimize
- moved old -j option to -J
- fixed threading in python-dbg
- fixed --manage-script-name
- make easy_install happy

uwsgi-0.9.8.5:
- fixed compatibility with multi app 0.9.6 syntax

Revision 1.6 / (download) - annotate - [selected], Mon Jul 25 10:15:00 2011 UTC (12 years, 8 months ago) by joerg
Branch: MAIN
Changes since 1.5: +4 -7 lines
Diff to previous 1.5 (colored)

Update to uwsgi-2.8.3:
- Various bugfixes and improvements

Revision 1.5 / (download) - annotate - [select for diffs], Fri Apr 8 12:26:29 2011 UTC (13 years ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2011Q2-base, pkgsrc-2011Q2
Changes since 1.4: +7 -4 lines
Diff to previous 1.4 (colored) to selected 1.6 (colored)

Changes 0.9.7.2:
* new option --touch-reload <file> to reload the stack on <file> modification
*  --static-map <mountpoint=documentroot> allows to serve static files
* fixed --post-limit management
* disallow empty socket names
* implemented exception_info WSGI support
* new options --reload-on-as <n> and --reload-on-rss <n> allows
  to recycle workers when their memory usage is higher than <n> MB
* fixed syslog support (use --log-syslog[=facility] to enable it)
* improved plugin loading system
* added support for RabbitMQ as event dispatcher for the Emperor
* fixed FreeBSD memory report
* PSGI plugin can be compiled without ithreads
* various Emperor fixes
* fixed a regression with setgroups()
* support for shared sockets (used in jails within network namespaces)

Revision 1.4 / (download) - annotate - [select for diffs], Tue Jun 15 22:18:34 2010 UTC (13 years, 9 months ago) by joerg
Branch: MAIN
CVS Tags: pkgsrc-2011Q1-base, pkgsrc-2011Q1, pkgsrc-2010Q4-base, pkgsrc-2010Q4, pkgsrc-2010Q3-base, pkgsrc-2010Q3, pkgsrc-2010Q2-base, pkgsrc-2010Q2
Changes since 1.3: +4 -4 lines
Diff to previous 1.3 (colored) to selected 1.6 (colored)

uwsgi-0.9.4.4:
- Support non-yielding applications better
- UDP logging
- uwsgi_error() for improved diagnostics
- fix a potential segmentation fault
- Add --version

Revision 1.3 / (download) - annotate - [select for diffs], Wed Mar 17 16:13:45 2010 UTC (14 years ago) by joerg
Branch: MAIN
CVS Tags: pkgsrc-2010Q1-base, pkgsrc-2010Q1
Changes since 1.2: +4 -4 lines
Diff to previous 1.2 (colored) to selected 1.6 (colored)

uwsgi 0.9.4.3: Fix sendfile for 64bit Linux.
Updated as the old distfile disappeared.

Revision 1.2 / (download) - annotate - [select for diffs], Mon Mar 8 13:49:18 2010 UTC (14 years, 1 month ago) by joerg
Branch: MAIN
Changes since 1.1: +4 -5 lines
Diff to previous 1.1 (colored) to selected 1.6 (colored)

uwsgi-0.9.4.2:
- fix a race condition in the worker spawning code
- minor fixes for the spooler code
- backport of UWSGI_SCHEME for better HTTPS support
- improvements for graceful reloading code

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Tue Feb 9 22:34:26 2010 UTC (14 years, 2 months ago) by joerg
Branch: TNF
CVS Tags: pkgsrc-base
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored) to selected 1.6 (colored)

Import uwsgi-0.9.4.1:

uWSGI is a fast (pure C), self-healing, developer-friendly WSGI server,
aimed for professional python webapps deployment and development.
Backend support exists for Apache, nginx, cherokee and lighttpd.

Some of the features include:
- low memory footprint
- preforking and multithreaded operation
- logging, diagnostic and profiling support
- support for sendfile()
- self-healing
- graceful restart and hot-plug upgrading

Revision 1.1 / (download) - annotate - [select for diffs], Tue Feb 9 22:34:26 2010 UTC (14 years, 2 months ago) by joerg
Branch: MAIN
Diff to selected 1.6 (colored)

Initial revision

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>