Хотите помочь с django-ulogin?¶
Если у вас есть желание преобщиться к чудесному миру opensource, или же приложение не устраивает вас в текущем его виде, то вы можете внести свою лепту в его улучшение.
Сообщайте об ошибках¶
Если вы нашли ошибку, или считаете, что всё должно быть совсем не так, или просто хотите что-то предложить, то к вашим услугам тикет-система на Гитхабе: https://github.com/marazmiki/django-ulogin/issues.
Пишите код¶
Есть желание поучаствовать в разработке приложения? Форкайте исходные коды https://github.com/marazmiki/django-ulogin и пишите свой. Может, он исправит какую-то ошибку, или описку в документации. А может, реализует какую-то незамеченную, но очень важную новую возможность в программе.
После того, как вы внесёте необходимые изменения в код, смело делайте пулл-реквест, чтобы ваши изменения попали в основной репозиторий и принимайте благодарности.
Рекомендации для написания кода¶
- Пишите код таким образом, чтобы он соответствовал PEP-0008. Обращайте внимание на советы по оформлению кода, которые даёт IDE (если пользуетесь). Также можно пользоваться линчевателями
pylint
иflake8
. Если у вас установлен GNU Make (обычно легко ставится или изначально присутствует на большинстве unix- и linux-систем), можете воспользоваться командойmake flake8
, которая найдёт все ошибки:
$ make flake8
- Не пренебрегайте тестами и не забывайте их запускать. В идеале, тест должен быть написан до написания собственно кода. Быстрый запуск тестов на текущем окружении можно выполить таким образом:
$ python setup.py test
или, если установлен GNU Make, таким:
$ make test
Однако, поскольку django-ulogin
является библиотекой и должна работать в различных окружениях (несколько версий Django, различные версии языка Python), необходимо также проверить, что код будет выполняться там. Это делается с помощью утилиты tox.
$ tox
Создание всех окружений и прогон на них тестов занимает некоторое время (около 10-15 минут, в зависимости от мощности компьютера и качества подключения к сети). Список поддерживаемых конфигураций, на которых должно отрабатывать приложение, задаётся в секции [tox:tox]
файла setup.cfg
из корня репозитория.
- Когда Вы сделаете PULL REQUEST, сервис для неприрывных интеграций Travis CI автоматически проверит, работает ли программа на всех заявленных окружениях. И если увидите красную полосу, исправьте, пожалуйста, ошибки.
- Ну и, конечно, не забудьте добавить себя в список авторов, который хранится в
docs/source/authors.rst
. Желательно с указанием настоящего имени и e-mail