Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
.pre-commit-config.yaml 3.41 KiB
---
default_language_version:
  python: python3

repos:
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.5.0
    hooks:
      - id: check-byte-order-marker
      - id: check-merge-conflict
      - id: check-symlinks
      - id: check-toml
        exclude: llama-index-core/llama_index/core/_static
      - id: check-yaml
        exclude: llama-index-core/llama_index/core/_static
      - id: detect-private-key
      - id: end-of-file-fixer
        exclude: llama-index-core/llama_index/core/_static
      - id: mixed-line-ending
        exclude: llama-index-core/llama_index/core/_static
      - id: trailing-whitespace
        exclude: llama-index-core/llama_index/core/_static
  - repo: https://github.com/charliermarsh/ruff-pre-commit
    rev: v0.1.5

    hooks:
      - id: ruff
        args: [--fix, --exit-non-zero-on-fix]
        exclude: ".*poetry.lock|.*_static"
  - repo: https://github.com/psf/black-pre-commit-mirror
    rev: 23.10.1
    hooks:
      - id: black-jupyter
        name: black-src
        alias: black
        exclude: "^docs|.*poetry.lock|.*_static"
  - repo: https://github.com/pre-commit/mirrors-mypy
    rev: v1.0.1
    hooks:
      - id: mypy
        additional_dependencies:
          [
            "types-requests",
            "types-Deprecated",
            "types-redis",
            "types-setuptools",
            "types-PyYAML",
            "types-protobuf==4.24.0.4",
          ]
        exclude: ^(docs/|llama-index-core/llama_index/core/_static)
        args:
          [
            --namespace-packages,
            --explicit-package-bases,
            --disallow-untyped-defs,
            --ignore-missing-imports,
            --python-version=3.8,
          ]
        entry: bash -c "export MYPYPATH=llama_index"
  - repo: https://github.com/psf/black-pre-commit-mirror
    rev: 23.10.1
    hooks:
      - id: black-jupyter
        name: black-docs-py
        alias: black
        files: ^(docs/|examples/)
        # Using PEP 8's line length in docs prevents excess left/right scrolling
        args: [--line-length=79]
  - repo: https://github.com/adamchainz/blacken-docs
    rev: 1.16.0