Обновить

README врёт: как я сделал open‑source линтер, который сверяет документацию с реальным репозиторием

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели9.1K
Всего голосов 9: ↑8 и ↓1+11
Комментарии2

Комментарии 2

Отличный проект! Можно ли декларативно уточнить, куда смотреть? Например, в README.md указана команда:

    ```powershell
    docker compose up -d mongodb
    ```

– а в репозитории есть два docker-compost: обычный .yaml и .local.yml (все же помнят, что и так, и так расширения писать можно, особенно если с головой непорядок?). Куда будет смотреть линтер? Я бы хотел ему прямо в маркдауне указать что-то типа в синтаксисе KYAML или типа того:

    # reality-lint-config:
    # {
    # applyTo: 'code-snippet'
    # files: ["docker-compost.local.yml"]
    # lintRulesWhitelist: ['RL018']
    # }
    ```powershell
    docker compose up -d mongodb
    ```

Тогда оно будет хватать настройки проверки сниппетов, если таковые есть, прямо из файлов md.

Да, это как раз хороший кейс для RealityLint.

Сейчас привязка проверки к конкретному файлу через декларативную директиву вроде code-snippet ещё не реализована, поэтому ваш пример я бы пока не выдавал за поддерживаемый синтаксис.

Но сама идея мне нравится: можно явно объявлять, что конкретный блок кода в README относится не к корню репозитория, а, например, к docker-compose.local.yml, и выполнять проверку уже относительно этого контекста.

Для вашего случая я бы скорее двигался в сторону чего-то такого:

# realitylint-config
{ "applyTo": "code-snippet",
"files": ["docker-compose.local.yml"],
"rulesWhitelist": ["RL018"]
}

После этого RealityLint мог бы понимать, что следующий блок нужно проверять именно относительно указанного Compose-файла:

```powershell docker compose up -d mongodb

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации