⚠️ PROJECT STATUS: MAINTENANCE MODE
uWSGI is in maintenance mode (announced 2024). The project receives only bugfixes and updates for new language APIs.
| Year | Event |
|---|---|
| 2009 | uWSGI project initiated by Unbit (Italy) |
| 2010 | First stable releases, WSGI support |
| 2011 | PSGI (Perl), Rack (Ruby) support added |
| 2012 | PHP, Lua, Go support; Emperor mode introduced |
| 2013-2015 | Rapid feature development, plugin ecosystem |
| 2016-2019 | Maturity phase, widespread adoption |
| 2020-2023 | Slowing development, ASGI emergence |
| 2024 | Maintenance mode announced |
| 2025 | Maintenance releases continue (2.0.30, 2.0.31) |
| 2026 | Project in maintenance mode |
uWSGI was created by Unbit, an Italian software company, as an open-source application server for running Python web applications.
“uWSGI” stands for “micro WSGI” - a lightweight implementation of the WSGI (Web Server Gateway Interface) specification.
uWSGI expanded beyond Python to support:
| Language | Protocol | Year |
|---|---|---|
| Python | WSGI | 2010 |
| Perl | PSGI | 2011 |
| Ruby | Rack | 2011 |
| PHP | Embedded | 2012 |
| Lua | Embedded | 2012 |
| Go | Go plugin | 2012 |
| Java | JVM plugin | 2013 |
Emperor mode was a significant innovation - a master process that manages multiple uWSGI instances (vassals):
Emperor (master)
├── Vassal 1 (app1.ini)
├── Vassal 2 (app2.ini)
└── Vassal 3 (app3.ini)
uWSGI developed a extensive plugin system:
| Version | Year | Key Features |
|---|---|---|
| 1.0 | 2010 | Initial WSGI support |
| 1.9 | 2012 | Emperor mode, multi-language |
| 2.0 | 2014 | Improved stability, new plugins |
| 2.0.10 | 2016 | Performance improvements |
| 2.0.18 | 2019 | Security fixes |
| 2.0.20 | 2020 | Bug fixes |
| 2.0.21-2.0.26 | 2021-2024 | Maintenance releases |
| 2.0.27-2.0.31 | 2024-2025 | Maintenance releases |
uWSGI became the de facto standard for deploying Python web applications:
Internet → [Nginx] → [uWSGI] → [Django/Flask]
With the rise of async Python frameworks, ASGI (Asynchronous Server Gateway Interface) emerged:
| Framework | Protocol | Server |
|---|---|---|
| Django | WSGI/ASGI | uWSGI/Daphne |
| Flask | WSGI | uWSGI/Gunicorn |
| FastAPI | ASGI | Uvicorn/Granian |
| Starlette | ASGI | Uvicorn/Granian |
| Channels | ASGI | Daphne |
uWSGI added ASGI support, but faced challenges:
In 2024, the maintainers announced uWSGI is in maintenance mode:
“The project is in maintenance mode. Only bugfixes and updates for new language APIs are being addressed. Do not expect quick answers on GitHub issues and/or pull requests.”
| Aspect | Status |
|---|---|
| Development | ⚠️ Maintenance mode |
| Maintainer | Unbit + contributors |
| Repository | https://github.com/unbit/uwsgi |
| Stars | 3.5k+ |
| License | GPL-2.0 with Linking Exception |
| Security Contact | GitHub issues |
| Version | Date | Type |
|---|---|---|
| 2.0.31 | Oct 11, 2025 | Maintenance |
| 2.0.30 | Jun 3, 2025 | Maintenance |
| 2.0.29 | Apr 11, 2025 | Maintenance |
| 2.0.27 | 2024 | Maintenance |
| Distribution | Status | Version |
|---|---|---|
| Debian 12/13 | ✅ Available | Varies |
| Ubuntu 22.04/24.04 | ✅ Available | Varies |
| RHEL 9 (EPEL) | ✅ Available | 2.0.31 |
| PyPI | ✅ Available | 2.0.31 |
uWSGI introduced several features that influenced application server development:
uWSGI has had relatively few major security vulnerabilities:
| Year | CVE | Description |
|---|---|---|
| 2017 | CVE-2017-13718 | Buffer overflow |
| Various | - | Minor security fixes in releases |
The project has a relatively clean security history compared to similar projects.
For new projects, consider:
| Server | Type | Best For |
|---|---|---|
| Gunicorn | WSGI | General Python web apps |
| Uvicorn | ASGI | Async Python (FastAPI) |
| Granian | ASGI/WSGI | High-performance async |
| Waitress | WSGI | Windows deployments |
| Daphne | ASGI | Django Channels |
Any questions?
Feel free to contact us. Find all contact information on our contact page.