Browse Source

🎨 Fix types for lifespan, upgrade Starlette to 0.26.1 (#9245)

pull/9260/head
Sebastián Ramírez 2 years ago
committed by GitHub
parent
commit
25aabe05ce
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 7
      fastapi/applications.py
  2. 4
      fastapi/routing.py
  3. 2
      pyproject.toml

7
fastapi/applications.py

@ -9,6 +9,7 @@ from typing import (
Optional,
Sequence,
Type,
TypeVar,
Union,
)
@ -43,10 +44,12 @@ from starlette.responses import HTMLResponse, JSONResponse, Response
from starlette.routing import BaseRoute
from starlette.types import ASGIApp, Lifespan, Receive, Scope, Send
AppType = TypeVar("AppType", bound="FastAPI")
class FastAPI(Starlette):
def __init__(
self,
self: AppType,
*,
debug: bool = False,
routes: Optional[List[BaseRoute]] = None,
@ -71,7 +74,7 @@ class FastAPI(Starlette):
] = None,
on_startup: Optional[Sequence[Callable[[], Any]]] = None,
on_shutdown: Optional[Sequence[Callable[[], Any]]] = None,
lifespan: Optional[Lifespan] = None,
lifespan: Optional[Lifespan[AppType]] = None,
terms_of_service: Optional[str] = None,
contact: Optional[Dict[str, Union[str, Any]]] = None,
license_info: Optional[Dict[str, Union[str, Any]]] = None,

4
fastapi/routing.py

@ -492,7 +492,9 @@ class APIRouter(routing.Router):
route_class: Type[APIRoute] = APIRoute,
on_startup: Optional[Sequence[Callable[[], Any]]] = None,
on_shutdown: Optional[Sequence[Callable[[], Any]]] = None,
lifespan: Optional[Lifespan] = None,
# the generic to Lifespan[AppType] is the type of the top level application
# which the router cannot know statically, so we use typing.Any
lifespan: Optional[Lifespan[Any]] = None,
deprecated: Optional[bool] = None,
include_in_schema: bool = True,
generate_unique_id_function: Callable[[APIRoute], str] = Default(

2
pyproject.toml

@ -41,7 +41,7 @@ classifiers = [
"Topic :: Internet :: WWW/HTTP",
]
dependencies = [
"starlette>=0.26.0,<0.27.0",
"starlette>=0.26.1,<0.27.0",
"pydantic >=1.6.2,!=1.7,!=1.7.1,!=1.7.2,!=1.7.3,!=1.8,!=1.8.1,<2.0.0",
]
dynamic = ["version"]

Loading…
Cancel
Save