Releases: cirospaciari/socketify.py
v0.0.1 First Release on PyPI
This release adds lifespan to ASGI and wsgi.errors to WSGI, and also fixes CLI Tool lifespan 🎉 ⚡ 🔥 🚀
This also marks the first release on PyPI and is the first release that can be used in production with official support!
To have the last stable version
pip3 install socketify
# or
pypy3 -m pip install socketify
https://pypi.org/project/socketify/0.0.1/
Work in progress:
v0.0.1 beta 4.1
WS fixes on socket refs and ASGI with falcon mixed.
v0.0.1 beta 4
This pre-release adds performance improvements in async, ASGI, WSGI, bug fixes, and an CLI tool 🎉 ⚡ 🔥 🚀
- Up to 56% faster async
- Up to 38% faster ASGI
- Up to 10% faster WSGI
- General bug fixes and improvements
CLI Tool
Work in progress:
- ASGI lifespan
- Hot reloading
- Plugins / Extensions
- on_start, on_shutdown hooks
- fs and fs.sync
- fetch
- SSGI
New contributors:
@kianmeng with fix typos
@AmirHmZz refactoring some code and is helping further refactors
💡 Features
- WebSocket with pub/sub support
- Fast and reliable Http/Https
- Support for Windows, Linux, and macOS Silicon & x64
- Support for
PyPy3
andCPython
- Dynamic URL Routing with Wildcard & Parameter support
- Sync and Async Function Support
- Really Simple API
- Fast and Encrypted TLS 1.3 is quicker than most alternative servers can do even unencrypted, cleartext messaging
- Per-SNI HttpRouter Support
- Proxy Protocol v2
- Shared or Dedicated Compression Support
- Max Backpressure, Max Timeout, Max Payload, and Idle Timeout Support
- Automatic Ping / Pong Support
- Per Socket Data
- Middlewares
- Templates Support (examples with
Mako
andJinja2
) - ASGI Server with pub/sub extension for Falcon
- WSGI Server
🔎 Upcoming Features
- In-Memory Cache Tools
- Fetch-like API powered by libuv
- Async file IO powered by libuv
- Full asyncio integration with libuv
- SSGI Server spec and support
- RSGI Server support
- Full Http3 support
HPy
integration to better supportCPython
,PyPy
andGraalPython
- Hot Reloading
v0.0.1 beta 3.2
Fixed some Bugs with ASGI and WSGI, now compatible with Flask, Django and Emmett
Everybody got faster with socketify.py ❤️ 🚀 ⚡
Framework/lib | Config | Requests/second |
---|---|---|
socketify.py | PyPy3 | 1192964.88 |
fiber | golang | 1139500.68 |
socketify.py | Python3 | 582385.94 |
socketify.py | WSGI PyPy3 | 513008.76 |
falcon | socketify.py WSGI PyPy3 | 350167.20 |
socketify.py | ASGI PyPy3 | 315884.03 |
falcon | socketify.py ASGI PyPy3 | 246004.56 |
socketify.py | WSGI Python3 | 244237.57 |
Flask | Socketify.py WSGI PyPy3 | 213692.14 |
emmett | Socketify.py ASGI PyPy3 | 190399.03 |
granian | RSGI Python3 | 154675.38 |
falcon | Meinheld Python3 | 146120.10 |
falcon | socketify.py WSGI Python3 | 145300.24 |
socketify.py | ASGI Python3 | 129089.55 |
Django | Socketify.py WSGI PyPy3 | 91594.86 |
falcon | socketify.py ASGI Python3 | 88489.30 |
uvicorn | Python3 | 74262.67 |
emmett | Socketify.py ASGI Python3 | 74188.61 |
granian | ASGI Python3 | 59670.76 |
emmett | Emmett ASGI Python3 | 48327.88 |
Flask | Socketify.py WSGI Python3 | 33654.23 |
Django | Socketify.py WSGI Python3 | 27053.82 |
Django | Meinheld WSGI Python3 | 20474.19 |
v0.0.1 beta 3.1
Just minor fixes for Docker build compatibility with bullseye and Apple Silicon binaries update
v0.0.1 beta 3
Beta now can power Falcon and Flask 🎉 ⚡ 🔥 🚀
- General bug fixes and improvements
- Better logging
- Event Loop optimizations for async
- ASGI Server
- WSGI Server
Work in progress:
- Docs Update
- Plugins / Extensions
- fs and fs.sync
- fetch
- SSGI
💡 Features
- WebSocket with pub/sub support
- Fast and realiable Http/Https
- Support for Windows, Linux and macOS Silicon & x64
- Support for
PyPy3
andCPython
- Dynamic URL Routing with Wildcard & Parameter support
- Sync and Async Function Support
- Really Simple API
- Fast and Encrypted TLS 1.3 quicker than most alternative servers can do even unencrypted, cleartext messaging
- Per-SNI HttpRouter Support
- Proxy Protocol v2
- Shared or Dedicated Compression Support
- Max Backpressure, Max Timeout, Max Payload and Idle Timeout Support
- Automatic Ping / Pong Support
- Per Socket Data
- Middlewares
- Templates Support (examples with
Mako
andJinja2
) - ASGI Server with pub/sub extension for Falcon
- WSGI Server
🔎 Upcoming Features
- In-Memory Cache Tools
- Fetch like API powered by libuv
- Async file IO powered by libuv
- Full asyncio integration with libuv
- SSGI Server spec and support
- RSGI Server support
- Full Http3 support
HPy
integration to better supportCPython
,PyPy
andGraalPython
- Hot Reloading
v0.0.1 beta 2
Beta got a lot better 🎉 ⚡ 🔥 🚀
- Fixed pre-build for Windows and Apple Silicon
- General bug fixes and improvements
- Templates and MiddlewareRouter included
- Initial docs https://docs.socketify.dev/
Work in progress:
- better logging
- SelectorEventLoop
- fs and fs.sync
- fetch
💡 Features
- WebSocket with pub/sub support
- Fast and realiable Http/Https
- Support for Windows, Linux and macOS Silicon & x64
- Support for
PyPy3
andCPython
- Dynamic URL Routing with Wildcard & Parameter support
- Sync and Async Function Support
- Really Simple API
- Fast and Encrypted TLS 1.3 quicker than most alternative servers can do even unencrypted, cleartext messaging
- Per-SNI HttpRouter Support
- Proxy Protocol v2
- Shared or Dedicated Compression Support
- Max Backpressure, Max Timeout, Max Payload and Idle Timeout Support
- Automatic Ping / Pong Support
- Per Socket Data
- Middlewares
- Templates Support (examples with
Mako
andJinja2
) - ASGI Server with pub/sub extension for Falcon
- WSGI Server
🔎 Upcoming Features
- In-Memory Cache Tools
- Fetch like API powered by libuv
- Async file IO powered by libuv
- Full asyncio integration with libuv
- SSGI Server spec and support
- RSGI Server support
- Full Http3 support
HPy
integration to better supportCPython
,PyPy
andGraalPython
- Hot Reloading
v0.0.1 beta
Initial release goes beta 🎉 ⚡ 🔥 🚀
Added middleware support, fixed some bugs and removed cork workarounds, and some graphiQL examples 🦾
Now i'm working in an SelectorEventLoop to avoid using workarounds and improve even more async performance.
💡 Features
- WebSocket with pub/sub support
- Fast and realiable Http/Https
- Support for Windows, Linux and macOS Silicon & x64
- Support for
PyPy3
andCPython
- Dynamic URL Routing with Wildcard & Parameter support
- Sync and Async Function Support
- Really Simple API
- Fast and Encrypted TLS 1.3 quicker than most alternative servers can do even unencrypted, cleartext messaging
- Per-SNI HttpRouter Support
- Proxy Protocol v2
- Shared or Dedicated Compression Support
- Max Backpressure, Max Timeout, Max Payload and Idle Timeout Support
- Automatic Ping / Pong Support
- Per Socket Data
- Middlewares
🔎 Upcoming Features
- Fetch like API powered by libuv
- Async file IO powered by libuv
- Full asyncio integration with libuv
- Full Http3 support
HPy
integration to better supportCPython
,PyPy
andGraalPython
- Hot Reloading
v0.0.1 alpha
Initial release 🎉 ⚡ 🔥 🚀
The first version that you can play with, docs are been written and i'm testing everything again, and will update with a new release every time is needed.
This very first release marks a milestone in development as we now have it working with:
- WebSocket with pub/sub support
- Fast and realiable Http/Https
- Support for Windows, Linux and macOS Silicon & x64
- Support for PyPy3 and CPython
This project aims to bring high performance PyPy3 web development and will bring in future releases:
- Fetch like API powered by libuv
- Async file IO powered by libuv
- Full asyncio integration with libuv
- Full Http3 support HPy integration to better support CPython, PyPy and GraalPython