Как плагин Dist::Zilla должен давать обратную связь пользователю?
У меня есть пара плагинов Dist::Zilla, которые я написал, когда я был новичком в Moose и Dist::Zilla, и в настоящее время я пытаюсь обновить их, чтобы сделать их немного более надежными и менее подверженными ошибкам,
Одна вещь, которую я хотел бы сделать, это дать пользователям обратную связь, если я обнаружу, что они дали мне противоречивые или невозможные инструкции. Вещи как:
[ MyPlugin ]
include = all
exclude = all
Dist::Zilla, похоже, имеет (недокументированную) внутреннюю систему журналирования, которую я изначально подключил, когда писал свои плагины, но которая больше не работает (вероятно, из-за внутренних изменений). Итак, как я должен дать обратную связь с пользователем в эти дни?
1 ответ
(Имеется в виду, чтобы указать это в комментарии, но ограничение по длине попадания).
Предостережение: я сам написал только пару маленьких плагинов dzil и не очень знаком с их внутренностями.
dzil использует Log::Dispatchouli, который также написан rjbs. Log::Dispatchouli используется несколькими другими проектами (включая проекты, запущенные людьми, отличными от rjbs), поэтому это не совсем внутренняя система ведения журнала dzil.
Насколько я понимаю, Log::Dispatchouli имеет только два уровня ведения журнала: обычный и отладочный. Журналы отладки обычно не видны в выходных данных; Вы должны сначала включить отладку. Нормальные (и отладочные) журналы могут быть отключены, если вы включите отключение звука.
Чтобы включить отладку в dzil, добавьте ключ командной строки -v. Это, похоже, не задокументировано ни в "dzil help", ни в "dzil help COMMAND". Но rjbs писал об этом.
Теперь для создания журналов внутри плагинов dzil, вы просто вызываете $self->log(...) или $self->log_debug(...). Второй будет виден, только если пользователь передаст опцию -v.