ci: # https://pre-commit.ci/#configuration autofix_prs: true autoupdate_commit_msg: '[pre-commit.ci] pre-commit suggestions' autoupdate_schedule: monthly repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v6.0.0 hooks: - id: no-commit-to-branch name: No commits to main args: [--branch, main] - id: end-of-file-fixer name: End-of-file fixer - name: mixed-line-ending id: mixed-line-ending args: [--fix, lf] - id: trailing-whitespace name: Remove trailing whitespaces exclude: '\.md$' - id: check-toml name: Check toml exclude: 'benchmark/harbor/template/' - id: check-yaml name: Check yaml - repo: https://github.com/adrienverge/yamllint.git rev: v1.37.1 hooks: - id: yamllint name: Lint yaml args: [-d, '{extends: default, rules: {line-length: disable, document-start: disable, truthy: disable, braces: disable, brackets: disable, indentation: disable, comments: disable, comments-indentation: disable}}'] # Ruff replaces: yapf, flake8, autoflake, pyupgrade, isort - repo: https://github.com/astral-sh/ruff-pre-commit rev: v0.14.3 hooks: - id: ruff name: Ruff lint (auto-fix) args: [--fix] exclude: 'benchmark/answer/' - id: ruff-format name: Ruff format exclude: 'benchmark/answer/' # Security scanning - repo: https://github.com/PyCQA/bandit rev: 1.7.10 hooks: - id: bandit name: Bandit security check args: ["-c", "backend/pyproject.toml", "-r", "backend/"] pass_filenames: false additional_dependencies: ["bandit[toml]"] - repo: https://github.com/executablebooks/mdformat rev: 0.7.22 hooks: - id: mdformat name: Format Markdown exclude: 'benchmark/answer/|^resources/' additional_dependencies: - mdformat-gfm - mdformat_frontmatter - mdformat_footnote