fix(types): resolve mypy errors in CI
All checks were successful
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/type Pipeline was successful

- Add type annotations to flash_middleware in main.py
- Add type: ignore comment for get_flash_messages return type

Fixes CI type check failures in:
- app/main.py:79
- app/presentation/web/flash.py:164
This commit is contained in:
2026-05-02 18:48:40 +03:00
parent ce2c052684
commit d62c799a28
2 changed files with 6 additions and 4 deletions

View File

@@ -4,13 +4,13 @@ This module is the main entry point for the FastAPI application.
Configures DI container, middleware, and routes following DDD principles.
"""
from collections.abc import AsyncGenerator
from collections.abc import AsyncGenerator, Awaitable, Callable
from contextlib import asynccontextmanager
import uvicorn
from dishka import make_async_container
from dishka.integrations.fastapi import setup_dishka
from fastapi import FastAPI
from fastapi import FastAPI, Request, Response
from fastapi.middleware.cors import CORSMiddleware
from fastapi.responses import HTMLResponse
from fastapi.staticfiles import StaticFiles
@@ -76,7 +76,9 @@ def app_factory() -> FastAPI:
register_error_handlers(app)
@app.middleware("http")
async def flash_middleware(request, call_next):
async def flash_middleware(
request: Request, call_next: Callable[[Request], Awaitable[Response]]
) -> Response:
"""Middleware to setup flash manager for each request."""
await setup_flash_manager(request)
response = await call_next(request)

View File

@@ -161,7 +161,7 @@ def get_flash_messages(request: Request) -> list[dict[str, str]]:
List of flash message dictionaries.
"""
if hasattr(request.state, "flash_manager"):
return request.state.flash_manager.get_messages()
return request.state.flash_manager.get_messages() # type: ignore[no-any-return]
return []