# Copyright 2025 Enactic, Inc. # # Licensed 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. repos: - repo: https://github.com/pre-commit/mirrors-clang-format rev: v20.1.7 hooks: - id: clang-format alias: cpp - repo: https://github.com/cheshirekow/cmake-format-precommit rev: v0.6.13 hooks: - id: cmake-format alias: cpp - repo: https://github.com/hhatto/autopep8 rev: v2.3.2 hooks: - id: autopep8 alias: python name: Python Format args: - "--global-config" - "python/pyproject.toml" - "--ignore-local-config" - "--in-place" - repo: https://github.com/trim21/pre-commit-mirror-meson rev: v1.8.2 hooks: - id: meson-fmt alias: python args: ["--inplace"] exclude: ".editorconfig$" - repo: https://github.com/koalaman/shellcheck-precommit rev: v0.10.0 hooks: - id: shellcheck alias: shell - repo: https://github.com/scop/pre-commit-shfmt # v3.11.0-1 or later requires pre-commit 3.2.0 or later but Ubuntu # 22.04 ships pre-commit 2.17.0. We can update this rev after # Ubuntu 22.04 reached EOL (June 2027). rev: v3.10.0-1 hooks: - id: shfmt alias: shell args: # The default args is "--write --simplify" but we don't use # "--simplify". Because it's conflicted will ShellCheck. - "--write"