Upgrading uvicorn 0.52 to 0.53
Review needed0.52.4 → 0.53.0New2Changed1Fixed2Other1
Review neededUpgrade verdict
1 changed default.
In plain terms
- Nothing in this range needs changes to your code. It adds features and fixes.
Must act Nothing to change
No breaking, platform, security or deprecated items in this range.
Nothing in this upgrade needs a code or configuration change.
API changes
Generated by DepDelta from published Python source. Not mixed with prose notes.
- changed:
constructor Config(app: ASGIApplication | Callable[..., Any] | str, host: str=…, port: int=…, uds: str | None=…, fd: int | None=…, loop: LoopFactoryType | str=…, http: type[asyncio.Protocol] | HTTPProtocolType | str=…, ws: type[asyncio.Protocol] | WSProtocolType | str=…, ws_max_size: int=…, ws_max_queue: int=…, ws_ping_interval: float | None=…, ws_ping_timeout: float | None=…, ws_per_message_defl… → constructor Config(app: ASGIApplication | Callable[..., Any] | str, host: str=…, port: int=…, uds: str | None=…, fd: int | None=…, loop: LoopFactoryType | str=…, http: type[asyncio.Protocol] | HTTPProtocolType | str=…, http2: bool=…, ws: type[asyncio.Protocol] | WSProtocolType | str=…, ws_max_size: int=…, ws_max_queue: int=…, ws_ping_interval: float | None=…, ws_ping_timeout: float | None=…, ws_p… - changed:
function create_ssl_context(certfile: str | os.PathLike[str], keyfile: str | os.PathLike[str] | None, password: str | None, ssl_version: int, cert_reqs: int, ca_certs: str | os.PathLike[str] | None, ciphers: str | None) -> ssl.SSLContext → function create_ssl_context(certfile: str | os.PathLike[str], keyfile: str | os.PathLike[str] | None, password: str | None, ssl_version: int, cert_reqs: int, ca_certs: str | os.PathLike[str] | None, ciphers: str | None, alpn_protocols: list[str] | None=…) -> ssl.SSLContext
- added:
function zuvloop_loop_factory(use_subprocess: bool=…) -> Callable[[], asyncio.AbstractEventLoop]
- changed:
function main(app: str, host: str, port: int, uds: str, fd: int, loop: LoopFactoryType | str, http: HTTPProtocolType | str, ws: WSProtocolType | str, ws_max_size: int, ws_max_queue: int, ws_ping_interval: float, ws_ping_timeout: float, ws_per_message_deflate: bool, lifespan: LifespanType, interface: InterfaceType, reload: bool, reload_dirs: list[str], reload_includes: list[str], reload_excludes:… → function main(app: str, host: str, port: int, uds: str, fd: int, loop: LoopFactoryType | str, http: HTTPProtocolType | str, http2: bool, ws: WSProtocolType | str, ws_max_size: int, ws_max_queue: int, ws_ping_interval: float, ws_ping_timeout: float, ws_per_message_deflate: bool, lifespan: LifespanType, interface: InterfaceType, reload: bool, reload_dirs: list[str], reload_includes: list[str], relo… - changed:
function run(app: ASGIApplication | Callable[..., Any] | str, *, host: str=…, port: int=…, uds: str | None=…, fd: int | None=…, loop: LoopFactoryType | str=…, http: type[asyncio.Protocol] | HTTPProtocolType | str=…, ws: type[asyncio.Protocol] | WSProtocolType | str=…, ws_max_size: int=…, ws_max_queue: int=…, ws_ping_interval: float | None=…, ws_ping_timeout: float | None=…, ws_per_message_deflate… → function run(app: ASGIApplication | Callable[..., Any] | str, *, host: str=…, port: int=…, uds: str | None=…, fd: int | None=…, loop: LoopFactoryType | str=…, http: type[asyncio.Protocol] | HTTPProtocolType | str=…, http2: bool=…, ws: type[asyncio.Protocol] | WSProtocolType | str=…, ws_max_size: int=…, ws_max_queue: int=…, ws_ping_interval: float | None=…, ws_ping_timeout: float | None=…, ws_per_…
- added:
class AutoZttpProtocol(asyncio.Protocol) - added:
constructor AutoZttpProtocol(config: Config, server_state: ServerState, app_state: dict[str, Any], _loop: asyncio.AbstractEventLoop | None=…) -> None - added:
field AutoZttpProtocol.alpn_protocols: ClassVar[list[str]] - added:
method AutoZttpProtocol.connection_lost(exc: Exception | None) -> None - added:
method AutoZttpProtocol.connection_made(transport: asyncio.Transport) -> None - added:
method AutoZttpProtocol.data_received(data: bytes) -> None - added:
method AutoZttpProtocol.eof_received() -> None - added:
method AutoZttpProtocol.shutdown() -> None - added:
variable HTTP2_PREFACE
- added:
async method RequestResponseCycle.receive() -> ASGIReceiveEvent - added:
async method RequestResponseCycle.run_asgi(app: ASGI3Application) -> None - added:
async method RequestResponseCycle.send(message: ASGISendEvent) -> None - added:
async method RequestResponseCycle.send_500_response() -> None - added:
class RequestResponseCycle - added:
class ZttpH2Protocol(asyncio.Protocol) - added:
constructor RequestResponseCycle(scope: HTTPScope, conn: zttp.H2Connection, stream: zttp.Stream, transport: asyncio.Transport, flow: FlowControl, logger: logging.Logger, access_logger: logging.Logger, access_log: bool, default_headers: list[tuple[bytes, bytes]], message_event: asyncio.Event, on_response: Callable[[int], None], resume_reading: Callable[[], None]) -> None - added:
constructor ZttpH2Protocol(config: Config, server_state: ServerState, app_state: dict[str, Any], _loop: asyncio.AbstractEventLoop | None=…) -> None - added:
field ZttpH2Protocol.alpn_protocols: ClassVar[list[str]] - added:
method RequestResponseCycle.abort_stream() -> None - added:
method ZttpH2Protocol.connection_lost(exc: Exception | None) -> None - added:
method ZttpH2Protocol.connection_made(transport: asyncio.Transport) -> None - added:
method ZttpH2Protocol.data_received(data: bytes) -> None - added:
method ZttpH2Protocol.eof_received() -> None - added:
method ZttpH2Protocol.events() -> Generator[Event] - added:
method ZttpH2Protocol.flush() -> None - added:
method ZttpH2Protocol.handle_events() -> None - added:
method ZttpH2Protocol.handle_request(event: zttp.Request) -> None - added:
method ZttpH2Protocol.handle_rst_stream(event: zttp.RstStream) -> None - added:
method ZttpH2Protocol.on_response_complete(stream_id: int) -> None - added:
method ZttpH2Protocol.on_stream_closed() -> None - added:
method ZttpH2Protocol.pause_writing() -> None - added:
method ZttpH2Protocol.resume_reading_if_idle() -> None - added:
method ZttpH2Protocol.resume_writing() -> None - added:
method ZttpH2Protocol.shutdown() -> None - added:
method ZttpH2Protocol.timeout_keep_alive_handler() -> None - added:
variable FORBIDDEN_HEADERS