Move preview features into a dedicated crate (#15482)

## Summary

This is causing some cyclic dependencies issues for me, because these
can be used in virtually _any_ crate (like `uv-install-wheel`), which
then means that all of `uv-configuration` becomes a dependency, etc. I
think this should be a leaf crate so that we can safely depend on it
anywhere.
This commit is contained in:
Charlie Marsh 2025-08-24 09:55:30 -04:00 committed by GitHub
parent f1647838ae
commit ac84f5aedc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
68 changed files with 145 additions and 76 deletions

View file

@ -20,7 +20,6 @@ uv-cache = { workspace = true }
uv-cache-info = { workspace = true }
uv-cache-key = { workspace = true }
uv-client = { workspace = true }
uv-configuration = { workspace = true }
uv-dirs = { workspace = true }
uv-distribution-filename = { workspace = true }
uv-extract = { workspace = true }
@ -30,6 +29,7 @@ uv-pep440 = { workspace = true }
uv-pep508 = { workspace = true }
uv-platform = { workspace = true }
uv-platform-tags = { workspace = true }
uv-preview = { workspace = true }
uv-pypi-types = { workspace = true }
uv-redacted = { workspace = true }
uv-state = { workspace = true }

View file

@ -8,7 +8,7 @@ use std::{env, io, iter};
use std::{path::Path, path::PathBuf, str::FromStr};
use thiserror::Error;
use tracing::{debug, instrument, trace};
use uv_configuration::Preview;
use uv_preview::Preview;
use which::{which, which_all};
use uv_cache::Cache;

View file

@ -7,9 +7,9 @@ use owo_colors::OwoColorize;
use tracing::debug;
use uv_cache::Cache;
use uv_configuration::Preview;
use uv_fs::{LockedFile, Simplified};
use uv_pep440::Version;
use uv_preview::Preview;
use crate::discovery::find_python_installation;
use crate::installation::PythonInstallation;

View file

@ -9,9 +9,9 @@ use tracing::{debug, info};
use uv_cache::Cache;
use uv_client::BaseClientBuilder;
use uv_configuration::Preview;
use uv_pep440::{Prerelease, Version};
use uv_platform::{Arch, Libc, Os, Platform};
use uv_preview::Preview;
use crate::discovery::{
EnvironmentPreference, PythonRequest, find_best_python_installation, find_python_installation,

View file

@ -132,7 +132,7 @@ mod tests {
use indoc::{formatdoc, indoc};
use temp_env::with_vars;
use test_log::test;
use uv_configuration::Preview;
use uv_preview::Preview;
use uv_static::EnvVars;
use uv_cache::Cache;

View file

@ -13,7 +13,7 @@ use itertools::Itertools;
use same_file::is_same_file;
use thiserror::Error;
use tracing::{debug, warn};
use uv_configuration::{Preview, PreviewFeatures};
use uv_preview::{Preview, PreviewFeatures};
#[cfg(windows)]
use windows_sys::Win32::Storage::FileSystem::FILE_ATTRIBUTE_REPARSE_POINT;