From 1d82f1d061e80cf58384f2ffa72b1c62dcec4a3a Mon Sep 17 00:00:00 2001 From: Tomas Pereira de Vasconcelos Date: Tue, 28 Jul 2026 11:57:34 +0200 Subject: [PATCH] Use pre-commit-uv to speed up pre-commit hook environment installs --- docs/reference/changelog.md | 1 + pyproject.toml | 4 +++- tox.ini | 6 +++++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/docs/reference/changelog.md b/docs/reference/changelog.md index c08ef295..ecb42673 100644 --- a/docs/reference/changelog.md +++ b/docs/reference/changelog.md @@ -16,6 +16,7 @@ Unreleased changes ### Developer Experience - Migrate all development dependencies from `requirements/*.txt` files to PEP 735 dependency groups in `pyproject.toml` ({gh-pr}`388`) +- Use `pre-commit-uv` to speed up pre-commit hook environment installs ({gh-pr}`396`) ### CI/CD diff --git a/pyproject.toml b/pyproject.toml index 8030b2ee..2c9cea47 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -134,8 +134,10 @@ local-dev = [ "setuptools-scm>=8", # Tox "tox", - # pre-commit + # pre-commit (the pre-commit-uv plugin makes pre-commit + # build its hook environments with uv - faster installs) "pre-commit", + "pre-commit-uv", # Releases are still a manual process that # requires the use of bumpversion locally "bumpversion", diff --git a/tox.ini b/tox.ini index 653afadb..74343a7f 100644 --- a/tox.ini +++ b/tox.ini @@ -73,7 +73,11 @@ passenv = XDG_CACHE_HOME SSH_AUTH_SOCK skip_install = true -deps = pre-commit +deps = + pre-commit + # Plugin that makes pre-commit build its hook + # environments with uv (faster installs) + pre-commit-uv commands = all: pre-commit run --all-files --show-diff-on-failure {posargs:} quick: pre-commit run ruff-format --all-files