uv/crates/uv-cache/src
konsti 62bf92132b
Add a 5 min default timeout for deadlocks (#16342)
When a process is running and another calls `uv cache clean` or `uv
cache prune` we currently deadlock - sometimes until the CI timeout
(https://github.com/astral-sh/setup-uv/issues/588). To avoid this, we
add a default 5 min timeout waiting for a lock. 5 min balances allowing
in-progress builds to finish, especially with larger native
dependencies, while also giving timely errors for deadlocks on (remote)
systems.

Commit 1 is a refactoring.

This branch also fixes a problem with the logging where acquired and
released resources currently mismatch:

```
DEBUG Acquired lock for `https://github.com/tqdm/tqdm`
DEBUG Using existing Git source `https://github.com/tqdm/tqdm`
DEBUG Released lock at `C:\Users\Konsti\AppData\Local\uv\cache\git-v0\locks\16bb813afef8edd2`
```
2025-12-04 14:59:04 +01:00
..
archive.rs Use files instead of junctions on Windows (#11269) 2025-02-13 16:17:49 -06:00
by_timestamp.rs Revert: Include environment variables in interpreter info caching (#11622) 2025-02-19 10:10:21 -06:00
cli.rs Make the use of `Self` consistent. (#15074) 2025-08-05 20:17:12 +01:00
lib.rs Add a 5 min default timeout for deadlocks (#16342) 2025-12-04 14:59:04 +01:00
removal.rs Make `uv cache clean` parallel process safe (#15888) 2025-09-19 10:21:22 +02:00
wheel.rs Support Git LFS with opt-in (#16143) 2025-12-02 12:23:51 +00:00