Version 23.3.0
Features
-
#2545 Standardize init of exceptions for more consistent control of HTTP responses using exceptions
-
#2606 Decode headers as UTF-8 also in ASGI
-
#2646 Separate ASGI request and lifespan callables
-
#2659 Use
FALLBACK_ERROR_FORMAT
for handlers that returnempty()
-
#2662 Add basic file browser (HTML page) and auto-index serving
-
#2667 Nicer traceback formatting (HTML page)
-
#2668 Smarter error page rendering format selection; more reliant upon header and "common sense" defaults
-
#2680 Check the status of socket before shutting down with
SHUT_RDWR
-
#2687 Refresh
Request.accept
functionality to be more performant and spec-compliant -
#2696 Add header accessors as properties
Example-Field: Foo, Bar Example-Field: Baz
request.headers.example_field == "Foo, Bar,Baz"
-
#2700 Simpler CLI targets
$ sanic path.to.module:app # global app instance $ sanic path.to.module:create_app # factory pattern $ sanic ./path/to/directory/ # simple serve
-
#2701 API to define a number of workers in managed processes
-
#2704 Add convenience for dynamic changes to routing
-
#2706 Add convenience methods for cookie creation and deletion
response = text("...") response.add_cookie("test", "It worked!", domain=".yummy-yummy-cookie.com")
-
#2707 Simplified
parse_content_header
escaping to be RFC-compliant and remove outdated FF hack -
#2710 Stricter charset handling and escaping of request URLs
-
#2711 Consume body on
DELETE
by default -
#2719 Allow
password
to be passed to TLS context -
#2720 Skip middleware on
RequestCancelled
-
#2721 Change access logging format to
%s
-
#2722 Add
CertLoader
as application option for directly controllingSSLContext
objects -
#2725 Worker sync state tolerance on race condition
Bugfixes
- #2651 ASGI websocket to pass thru bytes as is
- #2697 Fix comparison between datetime aware and naive in
file
when usingIf-Modified-Since
Deprecations and Removals
- #2666 Remove deprecated
__blueprintname__
property
Improved Documentation
- #2712 Improved example using
'https'
to create the redirect
New Contributors
- @r0x0d made their first contribution in #2666
- @deounix made their first contribution in #2680
- @mbendiksen made their first contribution in #2712
- @stricaud made their first contribution in #2697
Full Changelog: v22.12.0...v23.3.0