uv
753ad06f - Prevent uv tool upgrade from installing excluded dependencies (#18022)

Commit
10 days ago
Prevent uv tool upgrade from installing excluded dependencies (#18022) ## Summary <!-- What's the purpose of the change? What does it do, and why? --> Fixes #18021 Store dependencies excluded by uv tool install in the tool receipt and provide these same dependencies to the requirements resolver when the tool is upgraded. ## Test Plan <!-- How was it tested? --> Running the repro commands provided in issue #18021, we can see the excluded dependency does not get reinstalled when the tool is upgraded: ```sh $ cat /tmp/excludes.txt markdown-it-py $ ~/Dev/uv/target/debug/uv install --excludes /tmp/excludes.txt 2048-cli==1.0.2 Resolved 7 packages in 150ms Installed 7 packages in 56ms + 2048-cli==1.0.2 + click==8.3.1 + maturin==1.12.0 + numpy==2.4.2 + pygments==2.19.2 + rich==13.9.4 + rich-menu==0.3.0 Installed 1 executable: 2048-cli $ cat ~/.local/share/uv/tools/2048-cli/uv-receipt.toml [tool] requirements = [{ name = "2048-cli" }] excludes = ["markdown-it-py"] entrypoints = [ { name = "2048-cli", install-path = "/home/brad/.local/bin/2048-cli", from = "2048-cli" }, ] $ ~/Dev/uv/target/debug/uv tool upgrade 2048-cli Updated 2048-cli v1.0.2 -> v1.0.3 - 2048-cli==1.0.2 + 2048-cli==1.0.3 Installed 1 executable: 2048-cli ``` --------- Co-authored-by: Charlie Marsh <charlie.r.marsh@gmail.com>
Author
Parents
Loading