# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
default_stages: [commit]

default_language_version:
    python: python3

files: |
    (?x)^(
        (
            .github|
            cobalt|
            docker|
            glimp|
            internal|
            precommit_hooks|
            starboard|
            tools/metrics/actions/cobalt|
            tools/metrics/histograms/metadata/cobalt|
            tools/testing|
        )/
        | ^[^/]+$  # files in the root
    )
exclude: |
    (?x)^(
        (
            cobalt/updater|
            glimp/include|
            internal/kokoro/third-party|
            internal/starboard/shared/playstation/glimp/shaders|
        )/
        |
        .*_pb2\.py$ |
        .*\.pb\.cc$ |
        .*\.pb\.h$ |
        .*\.patch$ |
        .*Proto.java$|
        .*\.sig$
    )

repos:
-   repo: https://cobalt.googlesource.com/pre-commit-hooks
    rev: e1668fe86af3810fbca72b8653fe478e66a0afdc  # v3.2.0
    hooks:
    -   id: check-case-conflict
    -   id: end-of-file-fixer
    -   id: trailing-whitespace
    -   id: mixed-line-ending
    -   id: check-xml

-   repo: https://cobalt.googlesource.com/codespell
    rev: 67c489d36dd4c52cbb9e4755d90c35c6231842ef  # v2.0.0
    hooks:
    -   id: codespell
        name: Spell Check
        args: [-x, .codespellignorelines,
               # The --ignore-words-list argument has a bug where it needs to
               # be lowercase, see
               # https://github.com/codespell-project/codespell/issues/1390
               --ignore-words-list, "atleast,varius,ridiculus,statics",
               ]
        exclude: |
            (?x)^(
                (internal/)?starboard/[^/]+/i18n/|
                cobalt/content/licenses/|
                cobalt/content/ssl/|
                cobalt/fetch/embedded_scripts|
                cobalt/streams/embedded_scripts|
                cobalt/loader/cors_preflight.cc|
                internal/cobalt/browser/splash_screen/youtube_splash_screen.html|
                internal/starboard/shared/playstation/storage_internal.cc|
                starboard/loader_app/app_key_test.cc|
                starboard/shared/starboard/player/testdata|
                starboard/shared/win32/media_transform.cc
            )

-   repo: local
    hooks:
    -   id: sync-keyboxes
        name: sync-keyboxes
        entry: python ./precommit_hooks/sync_keyboxes_wrapper.py
        language: python
        stages: [post-checkout]
        always_run: true
    -   id: clang-format
        name: clang-format
        entry: clang-format
        language: python
        types: [c++]
        exclude_types: [objective-c++]
        args: [-i, -style=file]
        additional_dependencies: ['clang-format']
    -   id: cpplint
        name: cpplint
        entry: cpplint
        language: system
        types: [c++]
        args: [--verbose=4, --quiet]
        exclude: |
            (?x)(
                ^cobalt/bindings/(templates|generated)/|
                ^internal/starboard/shared/uikit/.*\.h$
            )
    -   id: yapf
        name: yapf
        description: Run yapf (the python formatter) in-place on changed files.
        entry: yapf
        language: system
        types: [python]
        args: [-i, -vv]
    -   id: pylint
        name: pylint
        entry: pylint
        language: system
        types: [python]
        args: [-d W0201]
    -   id: google-java-format
        name: google-java-format
        entry: python ./precommit_hooks/google_java_format_wrapper.py
        language: python
        types: [java]
        args: [-i]
    -   id: gcheckstyle
        name: Lint Java With gcheckstyle
        entry: python ./precommit_hooks/gcheckstyle_wrapper.py
        language: python
        types: [java]
        verbose: true
    -   id: check-copyright-year
        name: check copyright year
        entry: python ./precommit_hooks/check_copyright_year.py
        language: python
        types: [file, text]
        stages: [push]
        exclude: |
            (?x)^(
                .pylintrc$|
                .pre-commit-config.yaml$|
                cobalt/base/unicode/|
                cobalt/demos/content/|
                cobalt/layout_tests/testdata/|
                cobalt/math/|
                cobalt/media/|
                cobalt/streams/|
                cobalt/updater/|
                cobalt/webdriver/screencast/|
                cobalt/websocket/|
                components/crx_file/|
                content/|
                glimp/|
                nb/|
                starboard/android/apk/app/src/main/java/dev/cobalt/media/MediaDrmBridge.java$|
                starboard/shared/starboard/player/filter/decoded_audio_queue.cc$|
                starboard/shared/starboard/player/filter/decoded_audio_queue.h$|
                starboard/shared/starboard/player/testdata/licences/|
                starboard/shared/starboard/player/filter/wsola_internal.cc$
            )
        exclude_types: [markdown]
        verbose: true
    -   id: check-if-starboard-interface-changed
        name: check if starboard interface changed
        entry: python ./precommit_hooks/warn_that_starboard_interface_changed_wrapper.py
        language: python
        files: '^starboard/[^/]+\.h$'
        stages: [push]
    -   id: download-resources
        name: download resources
        entry: python ./download_resources.py
        language: python
        stages: [post-checkout]
        always_run: true
    -   id: test-download-from-gcs-helper
        name: test download from gcs helper
        entry: python
        language: python
        pass_filenames: false
        always_run: true
        stages: [push]
        args: [-m, unittest, tools/download_from_gcs_test.py]
    -   id: test-python3-compatibility
        name: Test Python 3 Compatibility
        description: Checks that scripts can be run in Python 3
        entry: python precommit_hooks/python3_check.py
        language: python
        types: [python]
        verbose: true
    -   id: check-bug-in-commit-message
        name: Check Bug In Commit Message
        description: Checks for a tracking bug in a commit message
        entry: python precommit_hooks/check_bug_in_description_wrapper.py
        language: python
        stages: [push]
        always_run: true
        pass_filenames: false
    -   id: gn-format
        name: GN format
        entry: gn format
        language: system
        files: '.*\.gni?$'
    -   id: meta-validate
        name: Validate METADATA files
        entry: python -m cobalt.tools.metadata.validate
        language: python
        additional_dependencies:
          - "protobuf"
        always_run: true
        pass_filenames: false
