Skip to content

Commit

Permalink
Remove note about BackgroundTasks being a limitation on the `BaseHT…
Browse files Browse the repository at this point in the history
…TPMiddleware` (#1874)

Co-authored-by: Adrian Garcia Badaracco <1755071+adriangb@users.noreply.github.com>
  • Loading branch information
2 people authored and aminalaee committed Feb 13, 2023
1 parent c0d204a commit e271059
Showing 1 changed file with 0 additions and 1 deletion.
1 change: 0 additions & 1 deletion docs/middleware.md
Original file line number Diff line number Diff line change
Expand Up @@ -243,7 +243,6 @@ around explicitly, rather than mutating the middleware instance.

Currently, the `BaseHTTPMiddleware` has some known limitations:

- It's not possible to use `BackgroundTasks` with `BaseHTTPMiddleware`. Check [#1438](https://github.com/encode/starlette/issues/1438) for more details.
- Using `BaseHTTPMiddleware` will prevent changes to [`contextlib.ContextVar`](https://docs.python.org/3/library/contextvars.html#contextvars.ContextVar)s from propagating upwards. That is, if you set a value for a `ContextVar` in your endpoint and try to read it from a middleware you will find that the value is not the same value you set in your endpoint (see [this test](https://github.com/encode/starlette/blob/621abc747a6604825190b93467918a0ec6456a24/tests/middleware/test_base.py#L192-L223) for an example of this behavior).

To overcome these limitations, use [pure ASGI middleware](#pure-asgi-middleware), as shown below.
Expand Down

0 comments on commit e271059

Please sign in to comment.