pyodide/.pre-commit-config.yaml

89 lines
2.4 KiB
YAML

exclude: (^.*patches|.*\.cgi$|^packages/micropip/src/micropip/externals|^benchmark/benchmarks$)
default_language_version:
python: "3.12"
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: "v4.6.0"
hooks:
- id: check-added-large-files
- id: check-case-conflict
- id: check-merge-conflict
- id: check-symlinks
- id: check-yaml
exclude: .clang-format
- id: debug-statements
- id: end-of-file-fixer
- id: mixed-line-ending
- id: trailing-whitespace
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: "v0.3.5"
hooks:
- id: ruff
args: [--fix]
- id: ruff-format
- repo: https://github.com/pre-commit/mirrors-clang-format
rev: "v18.1.3"
hooks:
- id: clang-format
types_or: [c++, c, cuda]
- repo: https://github.com/pre-commit/pygrep-hooks
rev: "v1.10.0"
hooks:
- id: python-use-type-annotations
exclude: docs/sphinx_pyodide/tests/test_directives\.py
- id: rst-backticks
- id: rst-directive-colons
- id: rst-inline-touching-normal
- repo: https://github.com/shellcheck-py/shellcheck-py
rev: "v0.10.0.1"
hooks:
- id: shellcheck
exclude: ^src/templates/python$
- repo: https://github.com/codespell-project/codespell
rev: "v2.2.6"
hooks:
- id: codespell
- repo: https://github.com/pre-commit/mirrors-mypy
rev: "v1.11.0"
hooks:
- id: mypy
files: ^(packages/.*/src|src|pyodide-build/pyodide_build)
exclude: (setup.py|.*test.*)
args: []
additional_dependencies: &mypy-deps
- packaging
- types-docutils
- types-pyyaml
- types-setuptools
- types-requests
- numpy
- build
- pytest
- pydantic>=2.0
- unearth
- resolvelib
- rich
- auditwheel_emscripten
- pyodide-lock==0.1.0a5
- micropip
- id: mypy
name: mypy-tests
args: [--ignore-missing-imports]
files: ^(packages/|docs|/conftest.py|src/tests)
exclude: (^packages/.*/setup.py|/src|^packages/aiohttp/aiohttp_patch.py$)
additional_dependencies: *mypy-deps
- repo: https://github.com/pre-commit/mirrors-prettier
rev: "v4.0.0-alpha.8"
hooks:
- id: prettier
ci:
autoupdate_schedule: "quarterly"