diff --git a/crates/uv-resolver/src/lib.rs b/crates/uv-resolver/src/lib.rs index b582a4234630..dc31f92183c5 100644 --- a/crates/uv-resolver/src/lib.rs +++ b/crates/uv-resolver/src/lib.rs @@ -4,12 +4,15 @@ pub use finder::{DistFinder, Reporter as FinderReporter}; pub use manifest::Manifest; pub use options::{Options, OptionsBuilder}; pub use prerelease_mode::PreReleaseMode; +pub use python_requirement::PythonRequirement; pub use resolution::{AnnotationStyle, Diagnostic, DisplayResolutionGraph, ResolutionGraph}; pub use resolution_mode::ResolutionMode; pub use resolver::{ - BuildId, DefaultResolverProvider, InMemoryIndex, Reporter as ResolverReporter, Resolver, - ResolverProvider, + BuildId, DefaultResolverProvider, InMemoryIndex, PackageVersionsResult, + Reporter as ResolverReporter, Resolver, ResolverProvider, VersionsResponse, + WheelMetadataResult, }; +pub use version_map::VersionMap; mod candidate_selector; mod constraints; diff --git a/crates/uv-resolver/src/resolver/mod.rs b/crates/uv-resolver/src/resolver/mod.rs index 6c8b69e541de..ef80eca9e6b1 100644 --- a/crates/uv-resolver/src/resolver/mod.rs +++ b/crates/uv-resolver/src/resolver/mod.rs @@ -47,9 +47,10 @@ use crate::pubgrub::{ use crate::python_requirement::PythonRequirement; use crate::resolution::ResolutionGraph; pub use crate::resolver::index::InMemoryIndex; -pub use crate::resolver::provider::DefaultResolverProvider; -pub use crate::resolver::provider::ResolverProvider; -pub(crate) use crate::resolver::provider::VersionsResponse; +pub use crate::resolver::provider::{ + DefaultResolverProvider, PackageVersionsResult, ResolverProvider, VersionsResponse, + WheelMetadataResult, +}; use crate::resolver::reporter::Facade; pub use crate::resolver::reporter::{BuildId, Reporter}; use crate::yanks::AllowedYanks; diff --git a/crates/uv-resolver/src/resolver/provider.rs b/crates/uv-resolver/src/resolver/provider.rs index 9ecdb4a694f4..27b65a6488e6 100644 --- a/crates/uv-resolver/src/resolver/provider.rs +++ b/crates/uv-resolver/src/resolver/provider.rs @@ -17,8 +17,8 @@ use uv_traits::{BuildContext, NoBinary}; use crate::python_requirement::PythonRequirement; use crate::version_map::VersionMap; -type PackageVersionsResult = Result; -type WheelMetadataResult = Result<(Metadata21, Option), uv_distribution::Error>; +pub type PackageVersionsResult = Result; +pub type WheelMetadataResult = Result<(Metadata21, Option), uv_distribution::Error>; /// The response when requesting versions for a package #[derive(Debug)] diff --git a/crates/uv-resolver/src/version_map.rs b/crates/uv-resolver/src/version_map.rs index 813652d81789..f83e5cd7353a 100644 --- a/crates/uv-resolver/src/version_map.rs +++ b/crates/uv-resolver/src/version_map.rs @@ -181,6 +181,14 @@ impl From for VersionMap { } } +impl From> for VersionMap { + fn from(value: BTreeMap) -> Self { + Self { + inner: VersionMapInner::Eager(value), + } + } +} + /// A lazily initialized distribution. /// /// This permits access to a handle that can be turned into a resolvable