Спасибо за интерес к проекту! Ниже — короткая памятка для контрибьюторов.
- Python >= 3.8.
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"Убедитесь, что проходят проверки:
pytest # тесты
ruff check . # линтер
mypy avito_ads # проверка типов (strict)- Идентификаторы (классы, функции, переменные) — на английском языке.
- Docstrings и пользовательская документация — на русском языке.
- Поддерживаем совместимость с Python 3.8: не используем синтаксис 3.9+/3.10+
(
list[...],X | Noneв рантайме и т. п.). Аннотации типов — черезtyping.List,typing.Optionalиfrom __future__ import annotations. - Новый код покрывайте тестами; HTTP мокируйте через
httpx.MockTransport(см.tests/conftest.py); тесты пишите параметризованными для sync и async.
Опишите шаги воспроизведения, версию Python и ожидаемое поведение. Не прикладывайте
реальные client_secret и токены.