[Code Quality] Мёртвый и избыточный код: двойная проверка пустого результата в cli.py, недостижимая ветка в xlsx.py #63
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Проблема
1. Избыточная проверка
is Noneв CLI (redmine_reporter/cli.py:396-402):fetch_issues_with_spent_time()возвращает либоNone(нет time entries), либо список (возможно пустой — если ни одна задача не вернулась изissue.filter). Оба случая полностью покрываются второй проверкойif not issue_hours; сообщения в обеих ветках идентичны. Первая ветка — мёртвый дубль.2. Недостижимая ветка в XLSX (
redmine_reporter/formatters/xlsx.py:41-45):У новой
openpyxl.Workbook()всегда есть активный лист («Sheet»), поэтомуwb.activeникогда не бываетNone. Проверено экспериментом:Workbook().active is None→False.3. Мелочи (опционально, тем же PR):
cli.py:524—from datetime import datetime as dt_mod, а также вyaml_config.py,config.py) — вынести в шапку модулей, если нет осознанной причины для ленивого импорта.except Exceptionбез конкретики в нескольких местах — сузить типы исключений там, где это безопасно.Рекомендации
cli.pyв однуif not issue_hours(текст сообщения сохранить).ws is Noneвxlsx.py(либо заменить наassertс поясняющим комментарием).pytest(все 277 тестов должны остаться зелёными),ruff check,mypy.Связанные места
redmine_reporter/cli.py:396-402,redmine_reporter/cli.py:524redmine_reporter/formatters/xlsx.py:41-45Критерии приёмки