diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..b28b42e --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,41 @@ +repos: + - repo: https://github.com/psf/black + rev: 22.8.0 + hooks: + - id: black + args: [--exclude=""] + + # this is not technically always safe but usually is + # use comments `# isort: off` and `# isort: on` to disable/re-enable isort + - repo: https://github.com/pycqa/isort + rev: 5.12.0 + hooks: + - id: isort + args: [--profile=black] + + # this is slightly dangerous because python imports have side effects + # and this tool removes unused imports, which may be providing + # necessary side effects for the code to run + - repo: https://github.com/PyCQA/autoflake + rev: v1.6.1 + hooks: + - id: autoflake + args: + - "--in-place" + - "--expand-star-imports" + - "--remove-duplicate-keys" + - "--remove-unused-variables" + - "--remove-all-unused-imports" + exclude: "open-parser/__init__.py" + + # run all unittests + - repo: local + hooks: + - id: unittests + name: unittests + entry: ./run_tests.sh + language: script + # Optional: Specify types of files that trigger this hook + # types: [python] + # Optional: Specify files or directories to exclude + # exclude: '^docs/'