Files
python-kasa/.pre-commit-config.yaml
Teemu R. d492dd4a44 Add python 3.14 to supported versions (#1599)
* Add python 3.14 to our supported versions and to our CI
* Convert to use pyproject.toml standard dependency groups
* Fix any issues reported by CI

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-07 18:42:09 +00:00

58 lines
1.5 KiB
YAML

repos:
- repo: https://github.com/astral-sh/uv-pre-commit
# uv version.
rev: 0.9.5
hooks:
# Update the uv lockfile
- id: uv-lock
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v6.0.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-docstring-first
- id: check-yaml
- id: debug-statements
- id: check-ast
- id: pretty-format-json
args:
- "--autofix"
- "--indent=4"
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.14.2
hooks:
- id: ruff
args: [--fix, --exit-non-zero-on-fix]
- id: ruff-format
- repo: https://github.com/PyCQA/doc8
rev: 'v2.0.0'
hooks:
- id: doc8
additional_dependencies: [tomli]
- repo: local
hooks:
# Run mypy in the virtual environment so it uses the installed dependencies
# for more accurate checking than using the pre-commit mypy mirror
- id: mypy
name: mypy
entry: uv run mypy
language: system
types_or: [python, pyi]
require_serial: true
exclude: | # exclude required because --all-files passes py and pyi
(?x)^(
kasa/modulemapping\.py|
)$
- id: generate-supported
name: Generate supported devices
description: This hook generates the supported device sections of README.md and SUPPORTED.md
entry: uv run ./devtools/generate_supported.py
language: system # Required or pre-commit creates a new venv
types: [json]
pass_filenames: false # passing filenames causes the hook to run in batches against all-files