uv/crates/uv-resolver
Charlie Marsh 29bdf1d597
Use a 'minor' version field (`revision`) in the lockfile (#11500)
## Summary

This is an alternative to the approach we took in #11063 whereby we
always included `provides-extra` and `requires-dist`, since we needed
some way to differentiate between "no extras" and "lockfile was
generated by a uv version that didn't include extras".

Instead, this PR adds a minor version (called a "revision") to the
lockfile that we can use to indicate support for this feature. While
lockfile version bumps are backwards-incompatible, older uv versions
_can_ read lockfiles with a later revision -- they just won't understand
all the data.

In a future major version bump, we could simplify things and change the
schema to use a (major, minor) format instead of these two separate
fields. But this is the only way to do it that's backwards-compatible
with existing uv versions.

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
2025-02-14 10:17:26 -06:00
..
src Use a 'minor' version field (`revision`) in the lockfile (#11500) 2025-02-14 10:17:26 -06:00
Cargo.toml Avoid narrowing `requires-python` marker with disjunctions (#10704) 2025-01-17 16:25:32 +00:00