Я хотел бы использовать pydocstyle как pre-commit hook для проверки строк документации исходного кода проекта, то есть файлов .py, расположенных внутри папки / src, когда сделан новый коммит git. Чтобы проверить только папку src, я использовал match-dir, однако, похоже, он не работает, и есть открытый Проблема с GitHub.
Следуя документации pydocstyle при использовании ловушки перед фиксацией я добавил pydocstyle в файл .pre-commit-config.yaml следующим образом:
repos:
- repo: https://github.com/pycqa/pydocstyle
rev: 5.1.1
hooks:
- id: pydocstyle
Отсюда я попробовал два метода настройки параметра match-dir
: в качестве аргумента командной строки и в файле конфигурации. Чтобы передать match-dir
в качестве аргумента командной строки, я использовал ключ args в . pre-commit-config.yaml следующим образом:
repos:
- repo: https://github.com/pycqa/pydocstyle
rev: 5.1.1
hooks:
- id: pydocstyle
args:
- --match-dir='^(src)'
Для метода файла конфигурации я создал .pydocstyle в корне проекта со следующим содержимым:
[pydocstyle]
match_dir = ^(src)
Оба метода не влияют на каталоги, которые проверяются при выполнении предварительной фиксации, а pydocstyle проверяет все файлы в проекте. Любая помощь с этим будет очень признательна!
pydocstyle --match-dir='^(src)'
из командной строки - вообще работает? Попробуйpydocstyle
- берет лиmatch_dir
от.pydocstyle
? - person phd   schedule 28.12.2020pydocstyle
в виртуальную среду, используя поэзию:poetry add pydocstyle
. Это установленная версия 5.1.1, такая же, как и версия, используемая при предварительной фиксации. Оба аргумента командной строки и методы файла конфигурации работают и проверяют только папку src. Это говорит о том, что существует проблема с передачей аргументов вpydocstyle
при использовании в качестве ловушки перед фиксацией. Пример в документации с флаг игнорирования работает правильно. Поэтому я не уверен, почемуmatch-dir
не работает. - person consoledotlog   schedule 28.12.2020