mirror of
https://github.com/astral-sh/uv.git
synced 2025-08-03 18:38:21 +00:00

## Summary The assumption that all tags are listed under a flat `.git/ref/tags` structure was wrong. Git creates a hierarchy of directories for tags containing slashes. To fix the cache key calculation, we need to recursively traverse all files under that folder instead. ## Test Plan 1. Create an `uv` project with git-tag cache-keys; 2. Add any tag with slash; 3. Run `uv sync` and see uv_cache_info error in verbose log; 4. `uv sync` doesn't trigger reinstall on next tag addition or removal; 5. With fix applied, reinstall triggers on every tag update and there are no errors in the log. Fixes #10467 --------- Co-authored-by: Sergei Nizovtsev <sergei.nizovtsev@eqvilent.com> Co-authored-by: Charlie Marsh <charlie.r.marsh@gmail.com>
26 lines
634 B
TOML
26 lines
634 B
TOML
[package]
|
|
name = "uv-cache-info"
|
|
version = "0.0.1"
|
|
edition = { workspace = true }
|
|
rust-version = { workspace = true }
|
|
homepage = { workspace = true }
|
|
documentation = { workspace = true }
|
|
repository = { workspace = true }
|
|
authors = { workspace = true }
|
|
license = { workspace = true }
|
|
|
|
[lib]
|
|
doctest = false
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
fs-err = { workspace = true }
|
|
globwalk = { workspace = true }
|
|
schemars = { workspace = true, optional = true }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
thiserror = { workspace = true }
|
|
toml = { workspace = true }
|
|
tracing = { workspace = true }
|
|
walkdir = { workspace = true }
|