Skip to content

Latest commit

 

History

History
99 lines (81 loc) · 9.84 KB

CONTRIBUTING.md

File metadata and controls

99 lines (81 loc) · 9.84 KB

Прежде всего, спасибо, что нашли время внести свой вклад!:+1::tada:

Оглавление

Как я могу внести вклад?

Использование лейблов

Как я могу внести вклад?

Сообщение об ошибках

Перед созданием заявки об ошибках, проверьте список заявок, возможно дублирующая заявка уже существует. Если вы нашли закрытую заявку об ошибке, которая похожа на вашу, не нужно ее переоткрывать. Заведите новую заявку и добавьте ссылку на существующую. Если найденная заявка открыта, отпишитесь в нее.

Перед заведением заявки проверьте, что ошибка воспроизводится на последней версии приложения.

  1. Используйте понятные формулировки.
  2. Укажите версию приложения, на которой возникла проблема.
  3. Опишите конкретные шаги, которые приводят к проблеме. Считается хорошим тоном, если предоставлено как можно больше подробностей.
  4. Опишите, что вы ожидали получить в результате своих действий и какой результат получен на самом деле.
  5. Прикрепите сообщение об ошибке, которое отображена в браузере, прикрепите файл лога .log, конфигурационный файл application-conf.properties.

Предложение об улучшении

Перед созданием предложения проверьте текущие заявки, возможно улучшение уже предложено. Если нет, заведите заявку и детально опишите предложение.

  1. Используйте понятные формулировки.
  2. Укажите какую версию приложения вы используете.
  3. Предоставьте пошаговое описание предлагаемого усовершенствования как можно подробнее.
  4. Опишите текущее поведение и объясните, какое поведение вы ожидаете увидеть и почему.
  5. Объясните, почему это усовершенствование будет полезно для большинства пользователей.

Ваш первый вклад в качестве контрибьютора

Проблемы для новых контрибьюторов - проблемы, для которых требуется всего несколько строк кода. Заявки, с которых стоит начать, отмечены лейблом good for first issue.

Добавление функциональности и исправление ошибок

Исправление ошибок и разработка новой функциональности должна вестись в pull request, дублировать разработку заявкой не нужно. Если заявка существует, ее нужно прилинковать, добавив в description заявки последней строчкой текст Closes gh-NNN, где NNN - это номер существующей заявки, пример.

Создание документации

Если вы считаете, что какая-то часть работы приложения недостаточно хорошо задокументирована, расширьте документацию через pull request. Документация располагается в директории docs.

Перевод документации

Согласно данным Московской биржи и НРД доля нерезидентов в ОФЗ достигает 30%, а на рынке акций - 50%. Важным вкладом в развитие проекта является перевод существующей документации на другие языки.

Использование лейблов

Работа с заявками (issues) и пулл реквестами (pull request) должна вестись с использованием лейблов (labels).

После заведения заявки или пулл реквеста, ей присваивается один из типов:

  • bug - проблема;
  • feature - новая функциональность;
  • improvement - улучшение существующей функциональности;
  • doc - запрос на доработку документации;
  • task - задача, тип которой не может быть отнесен ни к одной из предыдущих категорий;

и приоритет:

  • critical - для отчетов об ошибке, которые приводят к неработоспособности приложения во всех случаях или при определенных обстоятельствах;
  • major - для существенных улучшений функциональности, которые затрагивают широкий круг пользователей, или для ошибок приложения (например, ошибка подсчета доходности, выплат дивидендов, купонов, амортизации);
  • minor - для улучшений функциональности, которые затрагивают узкий круг пользователей, или ошибок, не влияющих на основной функционал (например, опечатки).

После первичного анализа контрибьютор может выставить на заявку или пулл реквест один из статусов:

  • question - если имеется вопрос по заявке;
  • duplicate - если заявка или пулл реквест дублирует существующую, они связываются с существующими комментарием 'Duplicate of gh-NNN', новая заявка закрывается, пулл реквест закрывается без мерджа;
  • invalid - если заявка или пулл реквест оформлена с ошибками, которые не могут быть исправлены (например, вандализм).

Заявка или пулл реквест рекомендованная контрибьюторам помечается одним из лейблов:

  • good first issue - заявка для новых контрибьюторов;
  • help wanted - заявка для опытных контрибьюторов.

В процессе работы над заявкой или пулл реквестом изменяется статус:

  • нет статуса - для новых заявок;
  • planned - объем доработок по заявке определен и запланирован;
  • wontfix - ошибки в работе приложения не найдено или в процессе обсуждения решено отклонить новую функциональность;
  • limitation - имеется ограничение, не зависящее от команды разработки, которое не позволяет исправить ошибку или реализовать новую функциональность;
  • in progress - заявка или пулл реквест в работе;
  • done - заявка или пулл реквест выполнены, ожидают ревью кода и мерджа в релизную ветку или в ветку фикса.

Заявка может быть закрыта:

  • сразу после установки одного из статусов duplicate, invalid или wontfix.
  • после установки статуса done, ревью кода и мерджа связанного пулл реквеста.

Работа с репозиторием ведется в рамках следующих соглашений.