feat(tools): add uv — Astral's Python package and project manager#12
feat(tools): add uv — Astral's Python package and project manager#12Cliftonz wants to merge 2 commits into
Conversation
Adds `uv` to the tool registry. `uv` is Astral's all-in-one Python toolchain — a drop-in replacement for pip, pip-tools, pipx, poetry, pyenv, and virtualenv that's widely adopted across the Python ecosystem. Install matrix mirrors ruff (same vendor, same channels): homebrew/core on macOS and linuxbrew, Alpine community via apk, winget on Windows, FreeBSD ports via pkg. apt/dnf/pacman intentionally omitted — Debian / Fedora / Arch don't ship uv in stable repos and Astral recommends brew / winget / installer over distro packages. Auto-registered via the `inventory` crate (no manual wiring). Tool count: 204 → 205. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
/fix-ci Attempt 1 of 3 — CI failed on commit 4 workflow run(s) failed. Each is fully detailed below: workflow, job, failing step, the exact command that ran, its exit code, the headline error, annotations, and a log tail. Failure 1 of 4:
|
|
/fix-ci Attempt 2 of 3 — CI failed on commit 4 workflow run(s) failed. Each is fully detailed below: workflow, job, failing step, the exact command that ran, its exit code, the headline error, annotations, and a log tail. Failure 1 of 4:
|
Docs Quality / Link check (lychee): rename exclude_mail → include_mail in .lychee.toml; the field was removed in lychee v0.23.0 and the config was unparseable, causing exit code 3. Docs Quality / Spell check (codespell): fix unparseable → unparsable in docs/release-quirks-jarvy.md:218; add iterm to .codespellignore to suppress false-positive on the iTerm2 product name in adding-tools.md. Docs Quality / Prose lint (vale): remove write-good from BasedOnStyles and drop its per-rule overrides from .vale.ini; the style package is not installed and vale sync found 0 packages, causing an E100 runtime error. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
/update-palette |
|
/update-palette |
Summary
uvto the tool registry — Astral's all-in-one Python toolchain (drop-in replacement for pip, pip-tools, pipx, poetry, pyenv, virtualenv).brew: uvon macOS + Linuxbrew,apk: uvon Alpine (community 3.20+),winget: astral-sh.uvon Windows,pkg: uvon FreeBSD.inventorycrate (no manual wiring). Tool count: 204 → 205.docs/tools-registry.mdregenerated viascripts/gen-docs.sh.Why this tool
Scanned
tool not in registryevents from~/.jarvy/logs/jarvy.log.*(the canonical local mirror of Grafana Cloud telemetry). The aggregated log signal was dominated by test fixtures (fakefoo,totally-fake-tool-xyz, etc.) — no real production signal pointed at a specific missing tool. Pickeduvbased on adoption: Astral's toolchain has become a standard Python install across the ecosystem since 2024, and it's the most visible single-name absence relative toruff(same vendor, already in the registry).apt/dnf/pacman intentionally omitted: stable repos don't ship
uvyet and Astral recommends brew/winget/installer over distro packages.Test plan
cargo check --bin jarvycleancargo test --lib tools::uv— 1/1 passcargo fmt --check+cargo clippy --bin jarvy -- -D warningsclean./target/debug/jarvy tools --indexshowsuv (macOS, Linux, Windows); count 204 → 205scripts/gen-docs.shproduces expected diff indocs/tools-registry.mdbetterleaksscan: no leaks foundecho 'uv = "latest"' > /tmp/jarvy.toml && jarvy setup --config /tmp/jarvy.tomlon a clean macOS boxNotes
origin/main(tools::git::definition::tests::git_macos_expected_outcome) is unrelated; reproduces without this branch's changes.default_hookfor shell completions added —ruffdoesn't ship one either, would introduce asymmetry.🤖 Generated with Claude Code