Ruff jako linter i formatter, konfiguracja w pyproject.toml:
- reguły E, W, F, I, N, UP, B, C4, SIM, TID, BLE, RUF
- extend-immutable-calls dla fastapi.Depends, File i Query - wstrzykiwanie
zależności opiera się na wywołaniach w wartościach domyślnych argumentów,
więc bugbear B008 zgłaszał tam 66 fałszywych trafień
- zakaz importów względnych, aby ścieżki w pakiecie czytało się jednoznacznie
- katalog frontend wyłączony z analizy
Poprawki, które wskazał linter:
- Awaitable, Callable i AsyncIterator importowane z collections.abc zamiast
z typing
- zbędny argument trybu w open(path, "r")
- contextlib.suppress zamiast try/except/pass przy anulowaniu zadania
- zdjęte dwie niepotrzebne dyrektywy noqa
- pięć linii przekraczających 100 znaków zawiniętych
Całość przepuszczona przez ruff format. Do .gitignore dochodzi .ruff_cache/.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>