- Clean and reinstall pre-commit hooks to fix corrupted cache - Update isort to v6.0.1 to resolve deprecation warnings - Fix pytest PT012 error by separating pytest.raises from context managers - Fix pytest PT011 errors by using GraphInterrupt instead of generic Exception - Fix formatting and trailing whitespace issues automatically applied by hooks
65 lines
1.5 KiB
YAML
65 lines
1.5 KiB
YAML
# Pre-commit configuration for BizBud
|
|
# Install with: pip install pre-commit && pre-commit install
|
|
|
|
repos:
|
|
# Black - Python code formatter
|
|
- repo: https://github.com/psf/black
|
|
rev: 24.4.2
|
|
hooks:
|
|
- id: black
|
|
language_version: python3
|
|
types: [python, pyi]
|
|
# This makes Black auto-fix formatting issues
|
|
args: [--quiet]
|
|
|
|
# isort - Import sorting
|
|
- repo: https://github.com/pycqa/isort
|
|
rev: 6.0.1
|
|
hooks:
|
|
- id: isort
|
|
name: isort (python)
|
|
types: [python]
|
|
# This makes isort auto-fix import sorting issues
|
|
args: [--quiet]
|
|
|
|
# flake8 - Linting (including test linting)
|
|
- repo: https://github.com/pycqa/flake8
|
|
rev: 7.0.0
|
|
hooks:
|
|
- id: flake8
|
|
additional_dependencies: [flake8-docstrings, flake8-pytest-style, flake8-bugbear]
|
|
types: [python]
|
|
|
|
# Basic file checks
|
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
rev: v5.0.0
|
|
hooks:
|
|
- id: trailing-whitespace
|
|
exclude: \.md$
|
|
- id: end-of-file-fixer
|
|
exclude: \.md$
|
|
- id: check-yaml
|
|
exclude: tests/cassettes/.*
|
|
- id: check-toml
|
|
- id: check-json
|
|
- id: check-merge-conflict
|
|
- id: check-added-large-files
|
|
args: [--maxkb=1000]
|
|
- id: debug-statements
|
|
|
|
- repo: local
|
|
hooks:
|
|
- id: pyrefly
|
|
name: pyrefly type checking
|
|
entry: .venv/bin/pyrefly check src/biz_bud
|
|
language: system
|
|
files: \.py$
|
|
pass_filenames: false
|
|
always_run: false
|
|
stages: [pre-commit]
|
|
verbose: true
|
|
|
|
default_stages: [pre-commit]
|
|
fail_fast: false
|
|
minimum_pre_commit_version: 3.0.0
|