Description
This is the same issue as the one declared here but when a shared base router is declared in a module and reused in other places (different modules).
Extension logs
Discovering FastAPI apps in 1 workspace folder(s)...
Found 1 candidate FastAPI file(s) in testing_project
Analyzed "file:///.../src/main.py": 0 routes, 1 routers, 15 include_router calls
Resolving include_router: test_service.router (prefix: none)
Analyzed "file:///.../services/test/test_service.py": 7 routes, 0 routers, 0 include_router calls
...
Found 1 FastAPI app(s) with 1 route(s) in testing_project
Repository link (if open source)
No response
Project structure
src/
├── main.py # app = FastAPI(); app.include_router(test_service.router)
├── auth/
│ └── testing_router.py # class ProtectedRouter(APIRouter) defined here
└── services/
└── test/
└── test_service.py # imports ProtectedRouter, instantiates + decorates routes
FastAPI app and router setup
`auth/testing_router.py:`
from typing import Any
from fastapi import APIRouter
from auth.dependencies import read_dependency
class ProtectedRouter(APIRouter):
"""Router that injects a read permission requirement on every endpoint"""
def __init__(self, *args: Any, **kwargs: Any) -> None:
existing = list(kwargs.pop("dependencies", None) or [])
kwargs["dependencies"] = [read_dependency] + existing
super().__init__(*args, **kwargs)
`main.py:`
from fastapi import FastAPI
from services.test import test_service
app = FastAPI()
app.include_router(test_service.router)
pyproject.toml [tool.fastapi] section (if present)
VS Code version
1.108.2
FastAPI extension version
0.3.2
Python version
3.12.3
FastAPI version
0.139.0
Operating system
Ubuntu (Linux 6.17.0-23-generic)
Description
This is the same issue as the one declared here but when a shared base router is declared in a module and reused in other places (different modules).
Extension logs
Repository link (if open source)
No response
Project structure
FastAPI app and router setup
pyproject.toml [tool.fastapi] section (if present)
VS Code version
1.108.2
FastAPI extension version
0.3.2
Python version
3.12.3
FastAPI version
0.139.0
Operating system
Ubuntu (Linux 6.17.0-23-generic)