From a729d5eadef2e6637a43ef6b4b51e41a6111474f Mon Sep 17 00:00:00 2001 From: Minh Ha-Duong Date: Thu, 5 Mar 2026 13:03:07 +0100 Subject: [PATCH 1/3] Replace pipx install advice with uv run instructions Dev tools are already in [dependency-groups] dev, so pipx is unnecessary and causes global leaks (e.g. mypy_cache in unrelated projects). Co-Authored-By: Claude Opus 4.6 --- pyproject.toml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 5503093..04a53ac 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -43,10 +43,8 @@ dependencies = [ "polars>=1.0.0", ] -# Note: Ubuntu distro version of `ruff`, `pytest`, `mypy` tend to be old. -# Rather install the latest version in `.local/bin/` with -# `pipx install ruff pytest mypy pre-commit` -# +# Dev tools (ruff, mypy, pytest, pre-commit) are managed by uv. +# Run with: uv run ruff check, uv run mypy, uv run pytest [dependency-groups] dev = [ "ruff>=0.11.12,<1.0.0", From 50c8f96d30cc5457cebfcc5c0bec4fa2e03edb59 Mon Sep 17 00:00:00 2001 From: Minh Ha-Duong Date: Thu, 5 Mar 2026 14:50:16 +0100 Subject: [PATCH 2/3] Add TODO for removing global pipx installs of ruff and pytest --- TODO.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 TODO.md diff --git a/TODO.md b/TODO.md new file mode 100644 index 0000000..3984f42 --- /dev/null +++ b/TODO.md @@ -0,0 +1,5 @@ +# TODO + +- [ ] Remove global pipx installs of ruff and pytest (`pipx uninstall ruff pytest`). + They shadow the project-local versions managed by uv and can cause version drift. + Use `uv run ruff` and `uv run pytest` instead. From 1778f5fba106d163184e9c20864a9065ca79d7cb Mon Sep 17 00:00:00 2001 From: Minh Ha-Duong Date: Tue, 23 Jun 2026 09:40:18 +0200 Subject: [PATCH 3/3] Cover all four uv-managed dev tools in pipx cleanup TODO The TODO's uninstall command and prose named only ruff and pytest, but the pyproject.toml comment it replaced flagged four uv-managed dev tools: ruff, pytest, mypy, and pre-commit (all confirmed in [dependency-groups] dev). Leaving global mypy and pre-commit installs in place keeps shadowing the uv-managed versions -- the exact drift this PR set out to fix. Extend the uninstall command to all four and generalize the prose to `uv run `. Co-Authored-By: Claude Opus 4.8 --- TODO.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/TODO.md b/TODO.md index 3984f42..b0dd166 100644 --- a/TODO.md +++ b/TODO.md @@ -1,5 +1,7 @@ # TODO -- [ ] Remove global pipx installs of ruff and pytest (`pipx uninstall ruff pytest`). +- [ ] Remove global pipx installs of ruff, pytest, mypy, and pre-commit + (`pipx uninstall ruff pytest mypy pre-commit`). They shadow the project-local versions managed by uv and can cause version drift. - Use `uv run ruff` and `uv run pytest` instead. + Run each tool via `uv run ` (e.g. `uv run ruff`, `uv run pytest`, + `uv run mypy`, `uv run pre-commit`) instead.