Browse Source

Remove code examples for Python 3.8 in `events`

pull/14510/head
Yurii Motov 7 months ago
parent
commit
370f02f6d6
  1. 12
      docs/en/docs/advanced/events.md
  2. 0
      docs_src/events/tutorial001_py39.py
  3. 0
      docs_src/events/tutorial002_py39.py
  4. 0
      docs_src/events/tutorial003_py39.py
  5. 2
      tests/test_tutorial/test_events/test_tutorial001.py
  6. 2
      tests/test_tutorial/test_events/test_tutorial002.py
  7. 2
      tests/test_tutorial/test_events/test_tutorial003.py

12
docs/en/docs/advanced/events.md

@ -30,7 +30,7 @@ Let's start with an example and then see it in detail.
We create an async function `lifespan()` with `yield` like this:
{* ../../docs_src/events/tutorial003.py hl[16,19] *}
{* ../../docs_src/events/tutorial003_py39.py hl[16,19] *}
Here we are simulating the expensive *startup* operation of loading the model by putting the (fake) model function in the dictionary with machine learning models before the `yield`. This code will be executed **before** the application **starts taking requests**, during the *startup*.
@ -48,7 +48,7 @@ Maybe you need to start a new version, or you just got tired of running it. 🤷
The first thing to notice, is that we are defining an async function with `yield`. This is very similar to Dependencies with `yield`.
{* ../../docs_src/events/tutorial003.py hl[14:19] *}
{* ../../docs_src/events/tutorial003_py39.py hl[14:19] *}
The first part of the function, before the `yield`, will be executed **before** the application starts.
@ -60,7 +60,7 @@ If you check, the function is decorated with an `@asynccontextmanager`.
That converts the function into something called an "**async context manager**".
{* ../../docs_src/events/tutorial003.py hl[1,13] *}
{* ../../docs_src/events/tutorial003_py39.py hl[1,13] *}
A **context manager** in Python is something that you can use in a `with` statement, for example, `open()` can be used as a context manager:
@ -82,7 +82,7 @@ In our code example above, we don't use it directly, but we pass it to FastAPI f
The `lifespan` parameter of the `FastAPI` app takes an **async context manager**, so we can pass our new `lifespan` async context manager to it.
{* ../../docs_src/events/tutorial003.py hl[22] *}
{* ../../docs_src/events/tutorial003_py39.py hl[22] *}
## Alternative Events (deprecated) { #alternative-events-deprecated }
@ -104,7 +104,7 @@ These functions can be declared with `async def` or normal `def`.
To add a function that should be run before the application starts, declare it with the event `"startup"`:
{* ../../docs_src/events/tutorial001.py hl[8] *}
{* ../../docs_src/events/tutorial001_py39.py hl[8] *}
In this case, the `startup` event handler function will initialize the items "database" (just a `dict`) with some values.
@ -116,7 +116,7 @@ And your application won't start receiving requests until all the `startup` even
To add a function that should be run when the application is shutting down, declare it with the event `"shutdown"`:
{* ../../docs_src/events/tutorial002.py hl[6] *}
{* ../../docs_src/events/tutorial002_py39.py hl[6] *}
Here, the `shutdown` event handler function will write a text line `"Application shutdown"` to a file `log.txt`.

0
docs_src/events/tutorial001.py → docs_src/events/tutorial001_py39.py

0
docs_src/events/tutorial002.py → docs_src/events/tutorial002_py39.py

0
docs_src/events/tutorial003.py → docs_src/events/tutorial003_py39.py

2
tests/test_tutorial/test_events/test_tutorial001.py

@ -6,7 +6,7 @@ from fastapi.testclient import TestClient
@pytest.fixture(name="app", scope="module")
def get_app():
with pytest.warns(DeprecationWarning):
from docs_src.events.tutorial001 import app
from docs_src.events.tutorial001_py39 import app
yield app

2
tests/test_tutorial/test_events/test_tutorial002.py

@ -6,7 +6,7 @@ from fastapi.testclient import TestClient
@pytest.fixture(name="app", scope="module")
def get_app():
with pytest.warns(DeprecationWarning):
from docs_src.events.tutorial002 import app
from docs_src.events.tutorial002_py39 import app
yield app

2
tests/test_tutorial/test_events/test_tutorial003.py

@ -1,6 +1,6 @@
from fastapi.testclient import TestClient
from docs_src.events.tutorial003 import (
from docs_src.events.tutorial003_py39 import (
app,
fake_answer_to_everything_ml_model,
ml_models,

Loading…
Cancel
Save