mirror of
https://github.com/google/benchmark.git
synced 2025-04-02 15:40:53 +08:00
* Add pre-commit config and GitHub Actions job Contains the following hooks: * buildifier - for formatting and linting Bazel files. * mypy, ruff, isort, black - for Python typechecking, import hygiene, static analysis, and formatting. The pylint CI job was changed to be a pre-commit CI job, where pre-commit is bootstrapped via Python. Pylint is currently no longer part of the code checks, but can be re-added if requested. The reason to drop was that it does not play nicely with pre-commit, and lots of its functionality and responsibilities are actually covered in ruff. * Add dev extra to pyproject.toml for development installs * Clarify that pre-commit contains only Python and Bazel hooks * Add one-line docstrings to Bazel modules * Apply buildifier pre-commit fixes to Bazel files * Apply pre-commit fixes to Python files * Supply --profile=black to isort to prevent conflicts * Fix nanobind build file formatting * Add tooling configs to `pyproject.toml` In particular, set line length 80 for all Python files. * Reformat all Python files to line length 80, fix return type annotations Also ignores the `tools/compare.py` and `tools/gbench/report.py` files for mypy, since they emit a barrage of errors which we can deal with later. The errors are mostly related to dynamic classmethod definition.
26 lines
704 B
YAML
26 lines
704 B
YAML
repos:
|
|
- repo: https://github.com/keith/pre-commit-buildifier
|
|
rev: 6.3.3.1
|
|
hooks:
|
|
- id: buildifier
|
|
- id: buildifier-lint
|
|
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
rev: v1.6.1
|
|
hooks:
|
|
- id: mypy
|
|
types_or: [ python, pyi ]
|
|
args: [ "--ignore-missing-imports", "--scripts-are-modules" ]
|
|
- repo: https://github.com/psf/black
|
|
rev: 23.10.1
|
|
hooks:
|
|
- id: black
|
|
- repo: https://github.com/pycqa/isort
|
|
rev: 5.12.0
|
|
hooks:
|
|
- id: isort
|
|
args: [--profile, black]
|
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
rev: v0.1.3
|
|
hooks:
|
|
- id: ruff
|
|
args: [ --fix, --exit-non-zero-on-fix ] |