uv/crates/distribution-filename/src
Charlie Marsh b6f470416e
Match wheel tags against Requires-Python major-minor (#5289)
## Summary

Given `Requires-Python: ">=3.12.3"`, we were rejecting wheels like
`dearpygui-1.11.1-cp312-cp312-win_amd64.whl`, since `3.12.0` is not
included in `>=3.12.3`. We instead need to test against the major-minor
version of `Requires-Python`.

The easiest way to do this, I think, is the use the `RequiresPython`
struct, which has a single bound that we can truncate the major-minor.
This also means that we now allow
`dearpygui-1.11.1-cp312-cp312-win_amd64.whl` for specifiers like
`Requires-Python: "==3.10.*"`. This is incorrect on the surface, but it
does match our semantics for `Requires-Python` elsewhere: we treat it as
a lower bound.

Closes https://github.com/astral-sh/uv/issues/5287.
2024-07-22 14:33:53 +00:00
..
snapshots Represent build tag as u64 (#4253) 2024-06-11 21:40:08 +00:00
build_tag.rs Represent build tag as u64 (#4253) 2024-06-11 21:40:08 +00:00
egg.rs Make .egg-info filename parsing spec compliant (#4533) 2024-06-25 23:49:43 +00:00
lib.rs Make .egg-info filename parsing spec compliant (#4533) 2024-06-25 23:49:43 +00:00
source_dist.rs require serde and rkyv everywhere; remove optional serde and rkyv features (#3345) 2024-05-03 10:21:03 -04:00
wheel.rs Match wheel tags against Requires-Python major-minor (#5289) 2024-07-22 14:33:53 +00:00