mirror of
https://github.com/astral-sh/uv.git
synced 2025-07-24 05:35:04 +00:00
![]() This PR adds some additional sanity checking on resolution graphs to ensure we can never install different versions of the same package into the same environment. I used code similar to this to provoke bugs in the resolver before the release, but it never made it into `main`. Here, we add the error checking to the creation of `ResolutionGraph`, since this is where it's most convenient to access the "full" markers of each distribution. We only report an error when `debug_assertions` are enabled to avoid rendering `uv` *completely* unusuable if a bug were to occur in a production binary. For example, maybe a conflict is detected in a marker environment that isn't actually used. While not ideal, `uv` is still usable for any other marker environment. Closes #5598 |
||
---|---|---|
.. | ||
src | ||
Cargo.toml |