Releases: emmett-framework/granian
Releases · emmett-framework/granian
Granian 2.7.3
Granian 2.7.2
Patch release
Changes since 2.7.1:
- Review ASGI websockets' rejection flow
- This should fix an hang issue with Django channels
- Fix ASGI websocket scope suprotocols split (#817 by @JaeHyuckSa)
- Fix Content-Type header in metrics endpoint (#808 by @IngmarStein)
- Bump dependencies
Granian 2.7.1
Patch release
Changes since 2.7.0:
- Fix websockets' handles cleanup on shutdown
- This should fix an occasional runtime thread panic with the message
Cannot drop pointer into Python heap without the thread being attached
- This should fix an occasional runtime thread panic with the message
- Fix a bug in the ASGI protocol preventing apps to receive the
websocket.disconnectevent after server-initiated close (#801 by @JaeHyuckSa)- This should fix some long-standing issues with Django channels
- Review some lock holding strategy in
PyFutureAwaitablecallback dispatch (#802 by @ColemanDunn) - Bump dependencies
Granian 2.7.0
What's Changed
New features
- Add prometheus metrics export (based on @butlerx preliminary work)
- Add support for ASGI websocket denial response extension (#771 by @JaeHyuckSa)
- Add static files rewrite support for directory listings (#784 by @tobiasge)
- Add support for multiple static paths
Changes
- Lowered
--blocking-threads-idle-timeoutminimum accepted value to 5 seconds - Bump dependencies
Enhancements
- Refactor blocking thread-pool resize strategy
- Review
autoruntime mode option
Fixes
- Bump minimum version of
clickdependency
Granian 2.6.1
Patch release
Changes since 2.6.0:
- Upgrade type annotations (#753, #755 by @oliverlambson)
- Fix workers lifetime option parsing with reloader (#775 by @blopker)
- Bump dependencies
Granian 2.6.0
What's Changed
New features
- Add
winloopsupport (#682 by @jpagh) - Allow to set UDS file permissions (#697 by @apapsch)
- Add TLSv1.2 support (#665 by @dpetzold)
- Bump RSGI spec to 1.6
- Add
--rss-samplesoption
Changes
- Drop Python 3.9 support
- Drop PyPy 3.9 and 3.10 support
- Promote Python 3.14 support to stable
- Promote UDS support to stable
- Avoid to automatically set workers' kill timeout with reloader enabled (#696 by @Sube-py)
- Lowered
--rss-sample-intervalminimum accepted value to 1 second - Bump PyO3 to 0.27
- Bump
mimallocto v3 - Bump dependencies
Enhancements
- Refactored workers Rust traits
- Add
autoruntime mode option - Support non-ASCII file names in static files
- Review workers' signals handling on Windows and async protocols
Fixes
- Avoid panics on exceeding ASGI messages
- Fix socket descriptor destruction on embedded server
Granian 2.5.7
Patch release
Changes since 2.5.6:
- Fix a Python 3.9 compatibility issue with
utils.proxiesmodule
Granian 2.5.6
Patch release
Changes since 2.5.5:
- Fix a bug on WSGI protocol causing wrong
PATH_INFOvalues in environ when--url-path-prefixused
Granian 2.5.5
Patch release
Changes since 2.5.4:
- Fallback to
spawnmultiprocessing start method when the default is not compatible- This fixes a bug preventing Granian to start on Unix systems running Python 3.14 with
forkserverspawn method
- This fixes a bug preventing Granian to start on Unix systems running Python 3.14 with
Granian 2.5.4
Patch release
Changes since 2.5.3:
- Fix query string encoding on WSGI protocol to only allow ISO-8859-1 representable unicode characters