Closed azinit closed 4 years ago
Damir:
comment-lines:
types: ["multiple", "oneline"] // то бишь [/**/, //]
function-body-actual-state:
part: 95 //считаем по алгоритму схожесть текста [70-95]
warnings-notification-per-time:
every: ["commit", "save"] // сообщения о том, что мб нужно изменить комент - перед каждым комитом, сохранением
comment-expired-time:
days: [null, number]
Ural
actool-cli/relevance-time
{time-in-days: 10} например
actool-cli/detection-comment-types
{type: //}
{type: //}
{type: //}
{type: {**}}
actool-cli/detection-symbol
{symbol: ACTOOL}
actool-cli/detection-func-types
actool-cli/auto-fix
{auto-fix: false}
actool-cli/notifications (уведомление об ошибке)
{notifications: immediate/pre-commit} (немедленное, то есть подчеркивание кода, либо ошибка с сообщением при коммите)
Ilya
actool/max-tags
- ограничение количества тегов TODO/FIXME в коде
{ todo: number }
- ограничение общего кол-ва TODO меток (default = 16){ fixme: number }
- ограничение общего кол-ва FIXME меток (default = 16)actool/live-doclets-block
- добавление обновляемости доклетов, в зависимости от изменения блока кода
{ diff: number }
- приемлемая разница (граница) между кол-вом коммитов доклета и блока кода (с фильтрацией лишних коммитов) (default=4)
TODO: Добавить возможность выбирать - по коммитам или дате?
- Получаем последний коммит для доклета и кода и вычисляем разницу (=> Commit[])
- Убираем лишние коммиты, оставляя только те, что затрагивали код (=> Commit[])
- Считаем кол-во оставшихся коммитов (=> number)
actool/live-doclets-line
- аналогично actool/live-doclets-block
(но можно задать свой конфиг)actool/live-doclets-module
- (нужен ли?)actool/no-commented-code
- ограничение использования закомментированного кода
{ when: "always" | "expired" }
- срабатывание валидатора всегда
/по истечению срока
(default="always"){ diff: number }
- приемлемая разница между кол-вом коммитов "живого" кода и закомментированного
`.actoolrc` {
<!-- Возможно стоит решать на уровне каждого правила, через параметр -->
commentsTypes: [
"multiple",
"oneline",
]
}
<!-- Сложно реализовать, если будут разные языки, больше похоже на experimental
function-body-actual-state:
part: 95 //считаем по алгоритму схожесть текста [70-95] -->
<!-- Если делаем eslint-plugin - то это все уже остается на плечах разраба
warnings-notification-per-time:
every: ["commit", "save"] // сообщения о том, что мб нужно изменить комент - перед каждым комитом, сохранением -->
<!-- Хз насколько будет нужно, если у нас будет парсер eslint-а
actool-cli/detection-symbol
{symbol: ACTOOL}
-->
<!-- См. `actool/live-doclets-...`
comment-expired-time:
days: [null, number]
actool-cli/relevance-time
{time-in-days: 10} например -->
<!-- Должно решаться на уровне линта
actool-cli/detection-func-types -->
<!-- Будет также решаться на уровне разраба
actool-cli/auto-fix
{auto-fix: false} -->
<!-- Будет также решаться на уровне разраба
actool-cli/notifications (уведомление об ошибке)
{notifications: immediate/pre-commit} (немедленное, то есть подчеркивание кода, либо ошибка с сообщением при коммите) -->