---
|
|
minimum_pre_commit_version: 1.21.0
|
|
fail_fast: false
|
|
default_stages: [commit, push]
|
|
repos:
|
|
# meta
|
|
|
|
- repo: meta
|
|
hooks:
|
|
- id: check-hooks-apply
|
|
- id: check-useless-excludes
|
|
|
|
# formatters
|
|
|
|
- repo: https://github.com/asottile/reorder_python_imports
|
|
rev: v2.3.5
|
|
hooks:
|
|
- id: reorder-python-imports
|
|
|
|
- repo: https://github.com/ambv/black
|
|
rev: 20.8b1
|
|
hooks:
|
|
- id: black
|
|
|
|
- repo: https://github.com/asottile/pyupgrade
|
|
rev: v2.7.3
|
|
hooks:
|
|
- id: pyupgrade
|
|
stages: [push]
|
|
|
|
# linters
|
|
|
|
- repo: https://github.com/PyCQA/bandit
|
|
rev: 1.6.2
|
|
hooks:
|
|
- id: bandit
|
|
args: ["-x", "tests"]
|
|
stages: [push]
|
|
|
|
#- repo: https://github.com/PyCQA/pydocstyle
|
|
#rev: 5.0.2
|
|
#hooks:
|
|
#- id: pydocstyle
|
|
#args: ["--ignore=D10,D21,D202"]
|
|
|
|
|
|
- repo: local
|
|
hooks:
|
|
|
|
- id: safety
|
|
name: safety
|
|
entry: safety
|
|
language: system
|
|
pass_filenames: false
|
|
args: ["check", "--bare"]
|
|
stages: [push]
|
|
|
|
- id: poetry
|
|
name: poetry
|
|
description: Validates the structure of the pyproject.toml file
|
|
entry: poetry check
|
|
language: system
|
|
pass_filenames: false
|
|
files: ^pyproject.toml$
|
|
stages: [push]
|
|
|
|
- repo: https://github.com/adrienverge/yamllint
|
|
rev: v1.25.0
|
|
hooks:
|
|
- id: yamllint
|
|
args: ["--strict", "-d", "{rules: {line-length: {max: 180}}}"]
|
|
|
|
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
rev: v0.790
|
|
hooks:
|
|
- id: mypy
|
|
|
|
- repo: https://gitlab.com/pycqa/flake8
|
|
rev: 3.8.4
|
|
hooks:
|
|
- id: flake8
|
|
|
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
rev: v3.3.0
|
|
hooks:
|
|
- id: check-added-large-files
|
|
- id: check-docstring-first
|
|
- id: debug-statements
|
|
- id: end-of-file-fixer
|
|
- id: trailing-whitespace
|
|
- id: check-ast
|
|
- id: check-builtin-literals
|
|
- id: detect-private-key
|
|
- id: mixed-line-ending
|
|
- id: name-tests-test
|
|
args: ["--django"]
|
|
|
|
- repo: https://github.com/pre-commit/pygrep-hooks
|
|
rev: v1.7.0
|
|
hooks:
|
|
# - id: rst-backticks
|
|
- id: python-use-type-annotations
|
|
- id: python-no-log-warn
|
|
- id: python-no-eval
|
|
- id: python-check-mock-methods
|
|
- id: python-check-blanket-noqa
|
|
|
|
# commit-msg
|
|
# http://jorisroovers.com/gitlint/#using-gitlint-through-pre-commit
|
|
|
|
- repo: https://github.com/jorisroovers/gitlint
|
|
rev: v0.14.0
|
|
hooks:
|
|
- id: gitlint
|