6e3ba2f03d
## Summary This PR replaces `bitflags` in favour of `enumflags2` (which we already transitively depended on) so that `PreviewFeatures` can be replaced with `PreviewFeature` which is an enum. This clarifies intent in cases where we only care about one specific `PreviewFeature`. To avoid a bunch of boilerplate changes, the `Preview` wrapper has been kept and creation now involves a `&[PreviewFeature]` in all cases. The alternative was to have everything which initialises a `Preview` use `BitFlags` directly and possibly to remove `Preview` entirely but this keeps things simpler and limits the changes throughout the rest of the codebase solely to changes which deal with the name changes (ALL_CAPS to PascalCase) and the impact on `--show-settings` which I don't believe we care about stability of output for? The changes to `--show-settings` could be avoided with some custom `Debug` implementation but that seems excessive. This PR will impact #16452. But the changes were inspired by trying to remove the need for that particular PR to add more runtime type checking. ## Test Plan Existing tests were adjusted (I also fixed some missing cases). The test for panicking in cases which are now prevented through the use of type changes has been dropped. All the rest of the tests were ran, snapshot changes reviewed and applied.
uv-python
This crate is an internal component of uv. The Rust API exposed here is unstable and will have frequent breaking changes.
This version (0.0.15) is a component of uv 0.9.26. The source can be found here.
See uv's crate versioning policy for details on versioning.