Accelerate your web app development | Build fast. Run fast.
Resolves #2477 and #2478 See also #2495 and https://github.com/sanic-org/sanic/security/advisories/GHSA-8cw9-5hmv-77w6
Full Changelog: https://github.com/sanic-org/sanic/compare/v20.12.6...v20.12.7
DEBUG
mode
task.cancel
BadRequest
, MethodNotAllowed
, RangeNotSatisfiable
)scope
as a property on the Request
objectfrom sanic import Websocket
Request.get_form
loads
functionRequest.get_current()
pythonw.exe
or places where there is no sys.stdout
http.lifecycle.request
signal in ASGI modeErrorHandler
LOGO
settingsanic.response.stream
AsyncioServer.init
Extend
Full Changelog: https://github.com/sanic-org/sanic/compare/v22.3.1...v22.6.0
Full Changelog: https://github.com/sanic-org/sanic/compare/v22.3.1...v22.3.2
Full Changelog: https://github.com/sanic-org/sanic/compare/v22.3.0...v22.3.1
sanic.worker.GunicornWorker
has been removed. To run Sanic with gunicorn
, you should use it thru uvicorn
as described in their docs.Authorization
header as Request.credentials
Touchup
step in application startupmultidict
v0.6<file:ext>
, <file:ext=jpg>
, <file:ext=jpg|png|gif|svg>
, <file=int:ext>
, <file=int:ext=jpg|png|gif|svg>
, <file=float:ext=tar.gz>
path
type matching, and is being released as a beta feature only.register_pattern
to accept a str
or Pattern
strorempty
pattern type
/<foo>
or /<foo:str>
) would match on any string, including empty strings. It will now only match a non-empty string. To retain the old behavior, you should use the new parameter type: /<foo:strorempty>
.error_logger
on websocketsNone
in task registryhost
values)debug=True
and --debug
do NOT automatically run auto_reload
auto
looks at headers)config
is required for ErrorHandler.finalize
ErrorHandler.lookup
requires two positional argssanic-routing
changesRequest.respond
Full Changelog: https://github.com/sanic-org/sanic/compare/v20.12.5...v20.12.6
#2366 Upgrade websockets
version - SECURITY UPDATE
uvloop
by configurationget
is no longer 100% determinative. There is now an additional step to loop thru the returned signals for proper matching on the requirements. If signals are being dispatched using app.dispatch
or bp.dispatch
, there is no change.app.run
Enum
websocket_handshake
http.lifecyle.response
from exception handlerSanic
and Blueprint
may no longer have arbitrary properties attached to themSanic
and Blueprint
forced to have compliant names
_
+ -
_
load_env
keyword argument of Sanic
sanic.exceptions.abort
sanic.views.CompositionView
sanic.response.StreamingHTTPResponse
stream()
response method (where you pass a callable streaming function) has been deprecated and will be removed in v22.6. You should upgrade all streaming responses to the new style: https://sanicframework.org/en/guide/advanced/streaming.html#response-streaming
Rerelease of v21.9.2 with some cleanup