| # Licensed to the Apache Software Foundation (ASF) under one | |
| # or more contributor license agreements. See the NOTICE file | |
| # distributed with this work for additional information | |
| # regarding copyright ownership. The ASF licenses this file | |
| # to you under the Apache License, Version 2.0 (the | |
| # "License"); you may not use this file except in compliance | |
| # with the License. You may obtain a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, | |
| # software distributed under the License is distributed on an | |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | |
| # KIND, either express or implied. See the License for the | |
| # specific language governing permissions and limitations | |
| # under the License. | |
| # To use this, install the python package `pre-commit` and | |
| # run once `pre-commit install`. This will setup a git pre-commit-hook | |
| # that is executed on each commit and will report the linting problems. | |
| # To run all hooks on all files use `pre-commit run -a` | |
| repos: | |
| - repo: https://github.com/pre-commit/pre-commit-hooks | |
| rev: v5.0.0 | |
| hooks: | |
| - id: trailing-whitespace | |
| exclude: ^src/iceberg/catalog/hive/gen-cpp/ | |
| - id: end-of-file-fixer | |
| exclude: ^src/iceberg/catalog/hive/gen-cpp/ | |
| - id: check-yaml | |
| - id: check-added-large-files | |
| exclude: ^src/iceberg/catalog/hive/gen-cpp/ | |
| - repo: https://github.com/pre-commit/mirrors-clang-format | |
| rev: v22.1.5 | |
| hooks: | |
| - id: clang-format | |
| exclude_types: [json] | |
| exclude: ^src/iceberg/catalog/hive/gen-cpp/ | |
| - repo: https://github.com/cheshirekow/cmake-format-precommit | |
| rev: v0.6.10 | |
| hooks: | |
| - id: cmake-format | |
| - repo: local | |
| hooks: | |
| - id: generate-public-headers | |
| name: check src/iceberg/cpp20_compatibility_internal.h is up to date | |
| entry: python ci/scripts/generate_public_headers.py | |
| language: python | |
| files: ^(src/.*(\.hpp?|CMakeLists\.txt)|ci/scripts/generate_public_headers\.py)$ | |
| pass_filenames: false |