Перейти к содержанию

Правила оформления Issues

Ниже — как создавать полезные issues и какие типы мы используем. В репозитории есть формы GitHub, соответствующие этим разделам.

Типы

  • Bug report — что‑то сломано или ведёт себя неожиданно.
  • Feature request — нужна новая возможность или флаг.
  • Documentation — правки и дополнения в документацию.
  • Question — вопросы по использованию (подумайте о Discussions).

Чек‑лист для бага

Укажите:

  • Полную команду запуска.
  • Для JSON используйте --quiet, чтобы stdout был чистым.
  • Пример: rimloc-cli --quiet validate --root ./Mods/MyMod --format json --ui-lang en
  • Версии и окружение:
  • rimloc-cli --version, ОС/шелл
  • Переменные: RUST_LOG, RIMLOC_LOG_DIR, NO_COLOR, NO_ICONS, RIMLOC_LOG_FORMAT
  • Ожидаемое и фактическое поведение (по 1–2 предложения)
  • Вложения:
  • Вывод консоли (stdout/stderr). Для JSON — вставьте JSON. Для текста — NO_COLOR=1.
  • Файловые логи (RIMLOC_LOG_DIR), лучше с RUST_LOG=debug.
  • Минимально воспроизводимый пример: небольшой фрагмент мода (2–3 XML) или короткий .po.

Чек‑лист для фичи

  • Постановка задачи — какую проблему решаем?
  • Предложение — желаемое поведение (флаги, опции, примеры)
  • Альтернативы — другие варианты
  • Критерии приёмки — как будем проверять (команды, ожидаемый вывод)
  • Влияние на документацию — какие страницы менять

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

  • Список страниц/разделов для обновления
  • Предлагаемый текст или примеры (желательно)
  • Скриншоты проблем в отрисованном сайте (если есть)

Советы

  • Для JSON‑конвейеров всегда используйте --quiet — так stdout останется машинно‑читаемым.
  • Включайте RUST_LOG=debug и прикладывайте logs/rimloc.log — так больше контекста.
  • Для проблем с плейсхолдерами приложите validate --format json или validate-po --format json.

Как избегать дублей

Перед созданием нового issue:

  • Поиск по открытым и закрытым issues (ключевые слова из ошибок/команд).
  • Если нашли похожее:
  • Поставьте реакцию 👍 на оригинальном issue (вместо комментариев «+1»).
  • Пишите комментарий только если добавляете новые детали (точная команда, логи, версии, минимальный пример).
  • Если issue закрыт, а проблема вернулась — опишите, что изменилось (версия, ОС, шаги) и попросите переоткрыть.
  • Если не уверены, дубликат ли это — создайте новый issue, но приложите ссылки на похожие в поле “Related issues” и кратко объясните отличия.