Skip to content
This repository was archived by the owner on Jul 18, 2022. It is now read-only.

Latest commit

 

History

History
100 lines (64 loc) · 4.13 KB

File metadata and controls

100 lines (64 loc) · 4.13 KB

Как помочь

Зависимости

Мы используем poetry для управления зависимостями.

Для их установки используйте аргумент install:

poetry install

Так же установим pre commit hooks в git:

poetry run pre-commit install

Для активации вашего virtualenv используйте poetry shell.

Настройка IDE

Здесь собраны рекомендуемые конфигурации, но вы можете использовать свои настройки.

Visual Studio Code

Для разработки на VS Code мы рекомендуем использовать Docker окружение с предустановленными зависимостями.

  1. Установите Docker Desktop (или Docker Engine, если вы на Linux)
  2. Установите расширение Remote - Containers
  3. Нажмите на F1 и впишите >remote-containers: clone repository in container volume
  4. Выберите GitHub
  5. Найдите репозиторий fire-square/autodonate
  6. Выберите нужную ветку (обычно это master, её можно будет изменить в будущем).
  7. Откройте терминал и впишите poetry install -E vscode-fix

Одна магическая команда

Используйте make test для запуска всего что у нас есть!

Тестирование

Мы используем black, flake8 и pytest для контроля качества.

Для запуска форматера:

black .

Для запуска линтера (он проверяет только doc-строки, подробнее):

flake8 .

Для запуска всех тестов:

pytest

Если вы хотите настроить конфигурацию утилит, вы должны сделать это в setup.cfg. Эти шаги являются обязательными во время CI.

Проверки типов

Мы используем mypy для запуска проверки типов в нашем коде:

mypy .

Этот шаг является обязательными во время CI.

Перед началом работы

Перед подачей вашего кода убедитесь что:

  1. Запустите тесты pytest, чтобы убедиться что всё работает
  2. Добавьте правки
  3. Добавьте тесты для правок
  4. Отредактируйте документацию, если вы изменили что-то важное
  5. Обновите CHANGELOG.md с коротким описанием Ваших изменений
  6. Запустите тесты pytest снова, чтобы убедиться что всё работает
  7. Запустите mypy, чтобы убедиться в корректности типов
  8. Запустите black, чтобы убедиться в корректном стиле кода
  9. Запустите doc8 и flake8, чтобы убедиться что документация работает
  10. Убедитесь что настроили свой PGP ключ для подписи всех коммитов.

Другая помощь

Вы можете помочь проекту распространяя информацию о нём. Так же большой поддержкой будет, например, написание короткой статьи о том как вы используете этот проект. Вы также можете делаться своими практиками с нами.