repos: - repo: https://github.com/asottile/pyupgrade rev: v2.34.0 hooks: - id: pyupgrade args: [--py39-plus] - repo: https://github.com/psf/black rev: 22.6.0 hooks: - id: black args: - --safe - --quiet files: ^((custom_components|script|tests)/.+)?[^/]+\.py$ - repo: https://github.com/codespell-project/codespell rev: v2.1.0 hooks: - id: codespell args: - --ignore-words-list=hass,alot,datas,dof,dur,ether,farenheit,hist,iff,iif,ines,ist,lightsensor,mut,nd,pres,referer,rime,ser,serie,te,technik,ue,uint,visability,wan,wanna,withing,iam,incomfort,ba,haa,pullrequests - --skip="./.*,*.csv,*.json" - --quiet-level=2 exclude_types: [csv, json] exclude: ^tests/fixtures/ - repo: https://github.com/PyCQA/flake8 rev: 4.0.1 hooks: - id: flake8 # E501 - line length (black will handle most of the issues, and what it can't - should be ingored additional_dependencies: - pycodestyle==2.8.0 - pyflakes==2.4.0 - flake8-docstrings==1.6.0 - pydocstyle==6.1.1 - flake8-comprehensions==3.8.0 - flake8-noqa==1.2.1 - mccabe==0.6.1 files: ^(custom_components|script|tests)/.+\.py$ - repo: https://github.com/PyCQA/bandit rev: 1.7.4 hooks: - id: bandit args: - --quiet - --format=custom - --configfile=tests/bandit.yaml files: ^(custom_components|script|tests)/.+\.py$ - repo: https://github.com/PyCQA/isort rev: 5.12.0 hooks: - id: isort - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.2.0 hooks: - id: check-executables-have-shebangs stages: [manual] - id: check-json exclude: (.vscode|.devcontainer) - id: no-commit-to-branch args: - --branch=dev - --branch=master - --branch=rc - repo: https://github.com/adrienverge/yamllint.git rev: v1.26.3 hooks: - id: yamllint - repo: https://github.com/pre-commit/mirrors-prettier rev: v2.6.1 hooks: - id: prettier - repo: https://github.com/cdce8p/python-typing-update rev: v0.3.5 hooks: # Run `python-typing-update` hook manually from time to time # to update python typing syntax. # Will require manual work, before submitting changes! - id: python-typing-update stages: [manual] args: - --py39-plus - --force - --keep-updates files: ^(custom_components|tests|script)/.+\.py$