From c6716461d1323315b1d26cd4b4d35f2829c78375 Mon Sep 17 00:00:00 2001 From: Pierre Le Marre Date: Thu, 28 Sep 2023 09:39:52 +0200 Subject: [PATCH] Add support for pre-commit See https://pre-commit.com for further info. Current checks: - Whitespaces - Yaml - Large files - Python linting/formatting TODO: investigate options for C linter and formatter --- .pre-commit-config.yaml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .pre-commit-config.yaml diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..e58a098 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,28 @@ +# See https://pre-commit.com for more information +# See https://pre-commit.com/hooks.html for more hooks +repos: +- repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.4.0 + hooks: + - id: trailing-whitespace + - id: end-of-file-fixer + - id: check-yaml + - id: check-added-large-files +- repo: https://github.com/psf/black + rev: 23.9.1 + hooks: + - id: black + args: ['--check', '--diff', '.'] +- repo: https://github.com/charliermarsh/ruff-pre-commit + rev: v0.0.291 + hooks: + - id: ruff + # ambiguous-variable-name (E741), line-too-long (E501) + args: ['--ignore=E741,E501', '.'] +# [TODO] C linter/formatter +# Note: There is an old config file for uncrustify (https://uncrustify.sourceforge.net) +# in the repo, but we may want to migrate to other modern style. +# - repo: https://github.com/pre-commit/mirrors-clang-format +# rev: v16.0.6 +# hooks: +# - id: clang-format