Przejdź do treści

FastAPI

Rodzina FAPI sprawdza aplikacje FastAPI między plikami: który router aplikacja dołącza, jakie kody błędów deklaruje schemat OpenAPI (ADR-037). Każda reguła FAPI jest opt-in i żadna nie zgłasza tego, co już zgłaszają reguły FAST Ruffa. W nowym projekcie inwards init --style fastapi włącza je wszystkie jako ostrzeżenia.

Kod Nazwa Co zgłasza Włączona
FAPI001 endpoint-metadata Operacja ścieżki bez metadanych OpenAPI, których wymaga projekt (podsumowanie, model odpowiedzi, kod statusu) opt-in
FAPI002 undocumented-error-response Operacja ścieżki, która może zwrócić kod błędu (rzucony bezpośrednio, w funkcji pomocniczej albo zależności, albo przez handler wyjątków aplikacji) niezadeklarowany w responses= opt-in
FAPI003 router-wiring APIRouter z trasami, którego nie dołącza żadna aplikacja, routery dołączające się nawzajem w cyklu albo include_router nad trasami dołączanego routera opt-in
FAPI005 route-shadowing Operacja ścieżki, na którą wcześniejsza z tą samą metodą już odpowiada: /users/{id} nad /users/me albo ta sama metoda i ścieżka dwa razy opt-in
FAPI006 lifespan-events Przestarzały handler on_event albo on_startup= (ostrzeżenie) oraz taki obok lifespan=, przez który FastAPI go pomija (błąd) opt-in
FAPI007 yield-dependency-swallows Zależność z yield, której klauzula except wokół niego nie rzuca wyjątku ponownie, więc błąd endpointu jest ukryty opt-in
FAPI008 duplicate-operation-id Dwie operacje ścieżki jednej aplikacji z tym samym literalnym operation_id opt-in
FAPI009 depends-called Depends(get_db()): zależność jest wywoływana przy imporcie zamiast zostać przekazana opt-in

Lista reguł zbiera reguły wszystkich kategorii w jednym miejscu; można ją przeszukiwać, filtrować i sortować.