| ci: |
| skip: [pylint] |
| |
| repos: |
| - repo: https://github.com/pre-commit/pre-commit-hooks |
| rev: v4.0.1 |
| hooks: |
| - id: trailing-whitespace |
| exclude: "tests/functional/t/trailing_whitespaces.py" |
| - id: end-of-file-fixer |
| exclude: "tests/functional/m/missing/missing_final_newline.py|tests/functional/t/trailing_newlines.py" |
| - repo: https://github.com/myint/autoflake |
| rev: v1.4 |
| hooks: |
| - id: autoflake |
| exclude: &fixtures tests/functional/|tests/input|tests/extensions/data|tests/regrtest_data/|tests/data/ |
| args: |
| - --in-place |
| - --remove-all-unused-imports |
| - --expand-star-imports |
| - --remove-duplicate-keys |
| - --remove-unused-variables |
| - repo: https://github.com/asottile/pyupgrade |
| rev: v2.26.0 |
| hooks: |
| - id: pyupgrade |
| args: [--py36-plus] |
| exclude: *fixtures |
| - repo: https://github.com/PyCQA/isort |
| rev: 5.9.3 |
| hooks: |
| - id: isort |
| - repo: https://github.com/psf/black |
| rev: 21.8b0 |
| hooks: |
| - id: black |
| args: [--safe, --quiet] |
| exclude: *fixtures |
| - repo: https://github.com/Pierre-Sassoulas/black-disable-checker/ |
| rev: 1.0.1 |
| hooks: |
| - id: black-disable-checker |
| - repo: https://github.com/PyCQA/flake8 |
| rev: 3.9.2 |
| hooks: |
| - id: flake8 |
| exclude: *fixtures |
| - repo: local |
| hooks: |
| - id: pylint |
| name: pylint |
| entry: pylint |
| language: system |
| types: [python] |
| args: |
| [ |
| "-rn", |
| "-sn", |
| "--rcfile=pylintrc", |
| "--load-plugins=pylint.extensions.docparams", |
| ] |
| # disabled plugins: pylint.extensions.mccabe |
| exclude: tests/functional/|tests/input|tests/extensions/data|tests/regrtest_data/|tests/data/|doc/ |
| - id: fix-documentation |
| name: Fix documentation |
| entry: python3 -m script.fix_documentation |
| language: system |
| types: [text] |
| files: ^(ChangeLog|doc/whatsnew/\d+\.\d+\.rst) |
| - repo: https://github.com/myint/rstcheck |
| rev: "3f92957478422df87bd730abde66f089cc1ee19b" |
| hooks: |
| - id: rstcheck |
| args: ["--ignore-roles=func,class,mod", "--report=warning"] |
| types: [text] # necessary to include ChangeLog file |
| files: ^(ChangeLog|doc/(.*/)*.*\.rst) |
| - repo: https://github.com/pre-commit/mirrors-mypy |
| rev: v0.910 |
| hooks: |
| - id: mypy |
| name: mypy |
| entry: mypy |
| language: python |
| types: [python] |
| args: [] |
| require_serial: true |
| additional_dependencies: |
| ["platformdirs==2.2.0", "types-pkg_resources==0.1.3", "types-toml==0.1.3"] |
| exclude: tests/functional/|tests/input|tests(/.*)*/data|tests/regrtest_data/|tests/data/|tests(/.*)+/conftest.py|doc/|bin/ |
| - repo: https://github.com/pre-commit/mirrors-prettier |
| rev: v2.4.0 |
| hooks: |
| - id: prettier |
| args: [--prose-wrap=always, --print-width=88] |