fixup! Fast depends v3 compatibility fix

This commit is contained in:
ZipFile 2025-10-23 12:30:46 +00:00
parent 133b1409c6
commit 4a5c86a71f

View File

@ -76,29 +76,21 @@ with suppress(ImportError):
MARKER_EXTRACTORS.append(extract_marker_from_fastapi) MARKER_EXTRACTORS.append(extract_marker_from_fastapi)
# Fast-depends support for both old and new versions with suppress(ImportError): # fast_depends >=3.0.0
FastDepends = None from fast_depends.dependencies.model import Dependant as FastDependant # type: ignore[attr-defined]
FastDependant = None
# Try to import from different locations to support both versions
with suppress(ImportError):
# Try version 3.0.0+ first (Dependant from model)
from fast_depends.dependencies.model import Dependant as FastDependant
def extract_marker_from_dependant_fast_depends(param: Any) -> Any: def extract_marker_from_dependant_fast_depends(param: Any) -> Any:
# Check for Dependant (3.0.0+) if isinstance(param, FastDependant):
if FastDependant is not None and isinstance(param, FastDependant):
return param.dependency return param.dependency
return None return None
MARKER_EXTRACTORS.append(extract_marker_from_dependant_fast_depends) MARKER_EXTRACTORS.append(extract_marker_from_dependant_fast_depends)
with suppress(ImportError): with suppress(ImportError): # fast_depends <3.0.0
# Try version < 3.0.0 (Depends class) from fast_depends.dependencies import Depends as FastDepends # type: ignore[attr-defined]
from fast_depends.dependencies import Depends as FastDepends
def extract_marker_from_fast_depends(param: Any) -> Any: def extract_marker_from_fast_depends(param: Any) -> Any:
if FastDepends is not None and isinstance(param, FastDepends): if isinstance(param, FastDepends):
return param.dependency return param.dependency
return None return None