repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.4.0 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: check-docstring-first - id: check-yaml - id: debug-statements - repo: https://github.com/PyCQA/flake8 rev: 6.0.0 hooks: - id: flake8 args: - --max-line-length=500 - --ignore=E203,E266,E501,W503 - --max-complexity=18 - --select=B,C,E,F,W,T4,B9 - repo: https://github.com/ambv/black rev: 23.1.0 hooks: - id: black language_version: python3 - repo: https://github.com/asottile/pyupgrade rev: v3.3.1 hooks: - id: pyupgrade args: ["--py39-plus"] - repo: https://github.com/PyCQA/isort rev: 5.12.0 hooks: - id: isort args: - --multi-line=3 - --trailing-comma - --force-grid-wrap=0 - --use-parentheses - --line-width=88 - -p=homeassistant - --force-sort-within-sections - repo: https://github.com/PyCQA/pydocstyle rev: 6.3.0 hooks: - id: pydocstyle - repo: https://github.com/pre-commit/mirrors-mypy rev: "v0.991" hooks: - id: mypy - repo: https://github.com/codespell-project/codespell rev: v2.2.2 hooks: - id: codespell args: - --ignore-words-list=hass - --skip="./.*,*.csv,*.json" - --quiet-level=2 exclude_types: [csv, json] - repo: https://github.com/PyCQA/bandit rev: 1.7.4 hooks: - id: bandit args: - --quiet - --format=custom - --configfile=bandit.yaml files: ^custom_components/.+\.py$ - repo: https://github.com/pre-commit/mirrors-prettier rev: v2.7.1 hooks: - id: prettier stages: [manual]