63 lines
1.6 KiB
YAML
63 lines
1.6 KiB
YAML
repos:
|
|
# Ruff for fast linting and formatting
|
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
rev: v0.11.13
|
|
hooks:
|
|
- id: ruff
|
|
args: [--fix, --exit-non-zero-on-fix]
|
|
name: ruff-lint
|
|
- id: ruff-format
|
|
name: ruff-format
|
|
|
|
# MyPy for static type checking
|
|
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
rev: v1.16.0
|
|
hooks:
|
|
- id: mypy
|
|
additional_dependencies: [
|
|
types-requests,
|
|
types-python-dateutil,
|
|
pydantic,
|
|
fastapi,
|
|
]
|
|
args: [--install-types, --non-interactive]
|
|
|
|
# Built-in hooks for basic file checks
|
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
rev: v5.0.0
|
|
hooks:
|
|
- id: trailing-whitespace
|
|
- id: end-of-file-fixer
|
|
- id: check-toml
|
|
- id: check-merge-conflict
|
|
- id: check-added-large-files
|
|
- id: debug-statements
|
|
- id: check-case-conflict
|
|
- id: check-docstring-first
|
|
|
|
# Security checks with bandit
|
|
- repo: https://github.com/PyCQA/bandit
|
|
rev: 1.8.3
|
|
hooks:
|
|
- id: bandit
|
|
args: [-c, pyproject.toml]
|
|
|
|
# Additional Python code quality checks
|
|
- repo: https://github.com/asottile/pyupgrade
|
|
rev: v3.20.0
|
|
hooks:
|
|
- id: pyupgrade
|
|
args: [--py312-plus]
|
|
|
|
ci:
|
|
autofix_commit_msg: |
|
|
[pre-commit.ci] auto fixes from pre-commit.com hooks
|
|
|
|
for more information, see https://pre-commit.ci
|
|
autofix_prs: true
|
|
autoupdate_branch: ""
|
|
autoupdate_commit_msg: "[pre-commit.ci] pre-commit autoupdate"
|
|
autoupdate_schedule: weekly
|
|
skip: []
|
|
submodules: false
|