# Note: don't use this config for your own repositories. Instead, see # "Version control integration" in docs/integrations/source_version_control.md exclude: ^(profiling/|tests/data/) repos: - repo: local hooks: - id: check-pre-commit-rev-in-example name: Check pre-commit rev in example language: python entry: python -m scripts.check_pre_commit_rev_in_example files: '(CHANGES\.md|source_version_control\.md)$' additional_dependencies: &version_check_dependencies [ commonmark==0.9.1, pyyaml==6.0.1, beautifulsoup4==4.9.3, ] - id: check-version-in-the-basics-example name: Check black version in the basics example language: python entry: python -m scripts.check_version_in_basics_example files: '(CHANGES\.md|the_basics\.md)$' additional_dependencies: *version_check_dependencies - repo: https://github.com/pycqa/isort rev: 6.0.1 hooks: - id: isort - repo: https://github.com/pycqa/flake8 rev: 7.2.0 hooks: - id: flake8 additional_dependencies: - flake8-bugbear==24.2.6 - flake8-comprehensions - flake8-simplify exclude: ^src/blib2to3/ - repo: https://github.com/pre-commit/mirrors-mypy rev: v1.15.0 hooks: - id: mypy exclude: ^(docs/conf.py|scripts/generate_schema.py)$ args: [] additional_dependencies: &mypy_deps - types-PyYAML - types-atheris - tomli >= 0.2.6, < 2.0.0 - click >= 8.2.0 # Click is intentionally out-of-sync with pyproject.toml # v8.2 has breaking changes. We work around them at runtime, but we need the newer stubs. - packaging >= 22.0 - platformdirs >= 2.1.0 - pytokens >= 0.1.10 - pytest - hypothesis - aiohttp >= 3.7.4 - types-commonmark - urllib3 - hypothesmith - id: mypy name: mypy (Python 3.10) files: scripts/generate_schema.py args: ["--python-version=3.10"] additional_dependencies: *mypy_deps - repo: https://github.com/rbubley/mirrors-prettier rev: v3.5.3 hooks: - id: prettier types_or: [markdown, yaml, json] exclude: \.github/workflows/diff_shades\.yml - repo: https://github.com/pre-commit/pre-commit-hooks rev: v5.0.0 hooks: - id: end-of-file-fixer - id: trailing-whitespace ci: autoupdate_schedule: quarterly