repos:
-   repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v3.4.0
    hooks:
    -   id: check-ast
    -   id: check-json
    -   id: check-xml
    -   id: check-yaml
    -   id: check-merge-conflict
    -   id: check-symlinks
-   repo: https://github.com/pre-commit/mirrors-mypy
    rev: v0.800
    hooks:
    -   id: mypy
        exclude: '^(pyextra)|(cereal)|(rednose)|(panda)|(laika)|(opendbc)|(laika_repo)|(rednose_repo)/'
        additional_dependencies: ['git+https://github.com/numpy/numpy-stubs']
-   repo: https://github.com/PyCQA/flake8
    rev: 3.8.4
    hooks:
    -   id: flake8
        exclude: '^(pyextra)|(cereal)|(rednose)|(panda)|(laika)|(opendbc)|(laika_repo)|(rednose_repo)|(selfdrive/debug)/'
        args:
        - --select=F,E112,E113,E304,E501,E502,E701,E702,E703,E71,E72,E731,W191,W6
        - --max-line-length=240
        - --statistics
-   repo: local
    hooks:
    -   id: pylint
        name: pylint
        entry: pylint
        language: system
        types: [python]
        exclude: '^(pyextra)|(cereal)|(rednose)|(panda)|(laika)|(laika_repo)|(rednose_repo)/'
-   repo: local
    hooks:
    -   id: cppcheck
        name: cppcheck
        entry: cppcheck
        language: system
        types: [c++]
        exclude: '^(phonelibs)|(cereal)|(opendbc)|(panda)|(tools)|(selfdrive/modeld/thneed/debug)|(selfdrive/modeld/test)|(selfdrive/camerad/test)/|(installer)'
        args:
        - --error-exitcode=1
        - --language=c++
        - --quiet
        - --force
        - -j8
