b8eeee4...
by
Charlie Marsh <email address hidden>
Filter out mismatching hashes in version map
ec16897...
by
Charlie Marsh <email address hidden>
Add a --require-hashes command-line setting
2ac562b...
by
Charlie Marsh <email address hidden>
Respect `--no-build` and `--no-binary` in `--find-links` (#2826)
## Summary
In working on `--require-hashes`, I noticed that we're missing some
incompatibility tracking for `--find-links` distributions. Specifically,
we don't respect `--no-build` or `--no-binary`, so if we select a wheel
due to `--find-links`, we then throw a hard error when trying to build
it later (if `--no-binary` is provided), rather than selecting the
source distribution instead.
dd3009a...
by
Charlie Marsh <email address hidden>
Respect Git tags and branches that look like short commits (#2795)
## Summary
If we're given a Git reference like `20240222`, we currently treat it as
a short commit hash. However... it _could_ be a branch or a tag. This PR
improves the Git reference logic to ensure that ambiguous references
like `20240222` are handled appropriately, by attempting to extract it
as a branch, then a tag, then a short commit hash.
dc2c289...
by
Charlie Marsh <email address hidden>
Upgrade `rs-async-zip` to support data descriptors (#2809)
## Summary
Upgrading `rs-async-zip` enables us to support data descriptors in
streaming. This both greatly improves performance for indexes that use
data descriptors _and_ ensures that we support them in a few other
places (e.g., zipped source distributions created in Finder).
Closes #2808.
34341bd...
by
Charlie Marsh <email address hidden>
Allow package lookups across multiple indexes via explicit opt-in (#2815)
## Summary
This partially revives https://github.com/astral-sh/uv/pull/2135 (with
some modifications) to enable users to opt-in to looking for packages
across multiple indexes.
The behavior is such that, in version selection, we take _any_
compatible version from a "higher-priority" index over the compatible
versions of a "lower-priority" index, even if that means we might accept
an "older" version.