repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.4.0 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.11.0 hooks: - id: pyupgrade args: [--py36-plus] exclude: *fixtures - repo: https://github.com/PyCQA/isort rev: 5.8.0 hooks: - id: isort - repo: https://github.com/ambv/black rev: 20.8b1 hooks: - id: black args: [--safe, --quiet] exclude: *fixtures - repo: https://github.com/Pierre-Sassoulas/black-disable-checker/ rev: 1.0.0 hooks: - id: black-disable-checker - repo: https://gitlab.com/pycqa/flake8 rev: 3.9.0 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/pre-commit/mirrors-mypy rev: v0.812 hooks: - id: mypy name: mypy entry: mypy language: python types: [python] args: ["--ignore-missing-imports", "--scripts-are-modules"] require_serial: true additional_dependencies: [] exclude: tests/functional/|tests/input|tests/extensions/data|tests/regrtest_data/|tests/data/|doc/|bin/ - repo: https://github.com/pre-commit/mirrors-prettier rev: v2.2.1 hooks: - id: prettier args: [--prose-wrap=always, --print-width=88]