aboutsummaryrefslogtreecommitdiff
path: root/.pre-commit-config.yaml
diff options
context:
space:
mode:
Diffstat (limited to '.pre-commit-config.yaml')
-rw-r--r--.pre-commit-config.yaml94
1 files changed, 94 insertions, 0 deletions
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
new file mode 100644
index 000000000..ebaa68b90
--- /dev/null
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,94 @@
+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]