mirror of
https://github.com/Akkudoktor-EOS/EOS.git
synced 2025-11-21 21:06:28 +00:00
Some checks failed
docker-build / platform-excludes (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Run Pytest on Pull Request / test (push) Has been cancelled
docker-build / build (push) Has been cancelled
docker-build / merge (push) Has been cancelled
Close stale pull requests/issues / Find Stale issues and PRs (push) Has been cancelled
Improve documentation generation and add tests for documentation. Extend sphinx by todo directive. The configuration table is now split into several tables. The test is adapted accordingly. There is a new test that checks the docstrings to be compliant to the RST format as used by sphinx to create the documentation. We can not use Markdown in docstrings. The docstrings are adapted accordingly. An additional test checks that the documentation can be build with sphinx. This test takes very long is only enabled in full run (aka. ci) mode. Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
81 lines
2.3 KiB
YAML
81 lines
2.3 KiB
YAML
# Exclude some file types from automatic code style
|
|
exclude: \.(json|csv)$
|
|
repos:
|
|
# --- Basic sanity checks ---
|
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
rev: v6.0.0
|
|
hooks:
|
|
- id: check-merge-conflict
|
|
- id: check-toml
|
|
- id: check-yaml
|
|
- id: end-of-file-fixer
|
|
- id: trailing-whitespace
|
|
- id: check-merge-conflict
|
|
exclude: '\.rst$' # Exclude .rst files from whitespace cleanup
|
|
|
|
# --- Import sorting ---
|
|
- repo: https://github.com/PyCQA/isort
|
|
rev: 7.0.0
|
|
hooks:
|
|
- id: isort
|
|
|
|
# --- Linting + Formatting via Ruff ---
|
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
rev: v0.14.1
|
|
hooks:
|
|
# Run the linter and fix simple isssues automatically
|
|
- id: ruff
|
|
args: [--fix]
|
|
# Run the formatter
|
|
- id: ruff-format
|
|
|
|
# --- Static type checking ---
|
|
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
rev: v1.18.2
|
|
hooks:
|
|
- id: mypy
|
|
additional_dependencies:
|
|
- types-requests==2.32.4.20250913
|
|
- pandas-stubs==2.3.2.250926
|
|
- tokenize-rt==6.2.0
|
|
- types-docutils==0.22.2.20251006
|
|
pass_filenames: false
|
|
|
|
# --- Markdown linter ---
|
|
- repo: https://github.com/jackdewinter/pymarkdown
|
|
rev: v0.9.32
|
|
hooks:
|
|
- id: pymarkdown
|
|
files: ^docs/
|
|
args:
|
|
- --config=docs/pymarkdown.json
|
|
- scan
|
|
|
|
# --- Commit message linting ---
|
|
# - Local cross-platform hooks
|
|
- repo: local
|
|
hooks:
|
|
# Validate commit messages (using Python wrapper)
|
|
- id: commitizen-commit
|
|
name: Commitizen (venv-aware)
|
|
entry: python3 scripts/cz_check_commit_message.py
|
|
language: system
|
|
stages: [commit-msg]
|
|
pass_filenames: false
|
|
|
|
# Branch name check on push (using Python wrapper)
|
|
- id: commitizen-branch
|
|
name: Commitizen branch check
|
|
entry: python3 scripts/cz_check_branch.py
|
|
language: system
|
|
stages: [pre-push]
|
|
pass_filenames: false
|
|
|
|
# Validate new commit messages before push (using Python wrapper)
|
|
- id: commitizen-new-commits
|
|
name: Commitizen (check new commits only, .venv aware)
|
|
entry: python3 -m scripts.cz_check_new_commits
|
|
language: system
|
|
stages: [pre-push]
|
|
pass_filenames: false
|