exclude: (^.*patches|.*\.cgi$|^packages/micropip/src/micropip/externals|^benchmark/benchmarks$) default_language_version: python: "3.11" repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: "v4.4.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/charliermarsh/ruff-pre-commit rev: "v0.0.254" hooks: - id: ruff args: [--fix] - repo: https://github.com/psf/black rev: "23.1.0" hooks: - id: black - repo: https://github.com/pre-commit/mirrors-clang-format rev: "v15.0.7" hooks: - id: clang-format types_or: [c++, c, cuda] - repo: https://github.com/pre-commit/mirrors-prettier rev: "v3.0.0-alpha.6" hooks: - id: prettier - 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.9.0.2" hooks: - id: shellcheck exclude: ^src/templates/python$ - repo: https://github.com/codespell-project/codespell rev: "v2.2.4" hooks: - id: codespell args: [ "--ignore-words-list", "ags,aray,asend,ba,classs,crate,falsy,feld,inflight,lits,nd,slowy,te", ] exclude: ^(benchmark/benchmarks/pystone_benchmarks/pystone\.py|src/js/package-lock\.json)$ - repo: https://github.com/pre-commit/mirrors-mypy rev: "v1.1.1" 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 - unearth - resolvelib - rich - auditwheel_emscripten - pyodide-lock==0.1.0a1 - micropip - id: mypy name: mypy-tests args: [--ignore-missing-imports] files: ^(packages/|docs|/conftest.py|src/tests|pyodide-build/pyodide_build/tests) exclude: (^packages/.*/setup.py|/src) additional_dependencies: *mypy-deps ci: autoupdate_schedule: "quarterly"