diff --git a/docs/middleware.md b/docs/middleware.md index f053e97fa..b21914291 100644 --- a/docs/middleware.md +++ b/docs/middleware.md @@ -305,3 +305,7 @@ can be used to profile and monitor distributed applications. A middleware class to emit timing information (cpu and wall time) for each request which passes through it. Includes examples for how to emit these timings as statsd metrics. + +#### [WSGIMiddleware](https://github.com/abersheeran/a2wsgi) + +A middleware class in charge of converting a WSGI application into an ASGI one. diff --git a/setup.cfg b/setup.cfg index 3089eaaf7..9f9c7b4eb 100644 --- a/setup.cfg +++ b/setup.cfg @@ -29,6 +29,7 @@ filterwarnings= ignore: The 'variables' alias has been deprecated. Please use 'variable_values' instead\.:DeprecationWarning # Workaround for Python 3.9.7 (see https://bugs.python.org/issue45097) ignore:The loop argument is deprecated since Python 3\.8, and scheduled for removal in Python 3\.10\.:DeprecationWarning:asyncio + ignore: starlette\.middleware\.wsgi is deprecated and will be removed in a future release\.*:DeprecationWarning [coverage:run] source_pkgs = starlette, tests diff --git a/starlette/middleware/wsgi.py b/starlette/middleware/wsgi.py index 7e69e1a6b..9dbd06528 100644 --- a/starlette/middleware/wsgi.py +++ b/starlette/middleware/wsgi.py @@ -2,11 +2,18 @@ import math import sys import typing +import warnings import anyio from starlette.types import Receive, Scope, Send +warnings.warn( + "starlette.middleware.wsgi is deprecated and will be removed in a future release. " + "Please refer to https://github.com/abersheeran/a2wsgi as a replacement.", + DeprecationWarning, +) + def build_environ(scope: Scope, body: bytes) -> dict: """