Skip to content

Latest commit

 

History

History
62 lines (49 loc) · 5.82 KB

CONTRIBUTING.md

File metadata and controls

62 lines (49 loc) · 5.82 KB

Contributing Guidelines

Виды участия в роадмапе

  • 💡 Создавайте issue, если вы видите, что мы не хватили какую-то область ответственности тимлида, где-то ошиблись или у вас просто есть отличная идея для обсуждения.
  • 🚫 Присылайте Pull Request с исправлением фактических ошибок.
  • 📚 Дорабатывайте базу знаний – как новые ветки, так и отдельные секции в уже готовых (например, "Как прокачать", "Примеры поведения" или "Список литературы").

Если вы не знаете, чем конкретно хотите заняться, то можете пробежаться по нашим Issues – их очень много на любой вкус.

Описание веток роадмапа

Если вы готовы взять в работу описание одной из веток, пройдитесь по нашему чек-листу:

  1. Проверьте, что на доске проекта в колонке "In progress" эта задача отсутствует, иначе вы рискуете проделать двойную работу.
  2. Найдите соответствующий тикет с лейблом knowledge-base в Issues и заассайньте его на себя. На доске проекта передвиньте в статус "In progress".
  3. Создайте новый файл описания в /skills/role с использованием шаблона описания.
  4. Заполните столько секций, сколько вы готовы.
  5. Добавьте ссылку на новое описание в файле links.json, который использует генератор.
  6. Пришлите PR.

Процесс принятия изменений

В репозитории два мейнтейнера: etolstoy и DevAlloy

  1. Для мелкофиксов достаточно апрува одного из мейнтейнеров.
  2. Для более сложных PR требуется апрув обоих мейнтейнеров.

Мы стараемся разбирать PR и issue в течение 1-3 дней. Максимальный срок разбора – 7 дней.

Технические детали

Что необходимо сделать перед отправкой PR

  1. Мы используем скрипты на Python, потому необходимо обновить зависимости pip3 install -r tools/requirements.txt
  2. Обновляем README и png
  3. Возвращаем пропущенные Ё
  4. Запускаем проверку орфографии
  5. Запускаем linter
  6. Коммитим изменения, если есть

Обновление README и png

Для всех изменений структуры источником правды является файл roadmap.puml. Для того, чтобы обновить его структуру или содержание, выполните следующие шаги:

  1. Внесите изменение в roadmap.puml, придерживаясь стандартов PlantUML, и сохраните файл.
  2. Зайдите в папку tools и выполните команду python3 gen_contents.py для автоматического обновления mindmap и png.

Проверка Ё

Для того, чтобы не терять букву Ё в словах используется eyo

Запустите npx eyo --only-safe --in-place "**/*.md" в корне проекта. Благодаря флагу --only-safe будут исправлены только точно потерянные Ё, а --in-place автоматически заменит.

Проверка орфографии

Для проверки орфографии в проекте нужен установленный yaspeller

  1. Запустите yaspeller --config .yaspellerrc.json . и он покажет предполагаемые ошибки.
  2. Если слово корректно, но yaspeller думает что это ошибка – добавьте в файл .yaspellerrc.json в массив dictionary.
  3. Если это паттерн – например, имена в названиях книг – имеет смысл добавить regexp в поле ignoreText.
  4. Блоки ссылок можно завернуть в специальные markdown-комментарии.
<!-- yaspeller ignore:start -->
ссылка
ссылка
<!-- yaspeller ignore:end -->

Linter

  1. Для того, чтобы файлы соответствовали единому стилю (отступы, кодировка и т.д), в некоторых IDE необходимо установить editorconfig плагин.
  2. Сама проверка запускается командой npx eclint check .