1pub use error::{ErrorTree, NoSolutionError, NoSolutionHeader, ResolveError};
2pub use exclusions::Exclusions;
3pub use flat_index::{FlatDistributions, FlatIndex};
4pub use manifest::Manifest;
5pub use preferences::{Preference, PreferenceError, Preferences};
6pub use pubgrub::PubGrubHint;
7pub use python_requirement::PythonRequirement;
8pub use resolution::{ConflictingDistributionError, DisplayResolutionGraph, ResolverOutput};
9pub use resolver::{
10 DefaultResolverProvider, InMemoryIndex, MetadataResponse, PackageVersionsResult,
11 Reporter as ResolverReporter, Resolver, ResolverEnvironment, ResolverProvider,
12 VersionsResponse, WheelMetadataResult,
13};
14pub use universal_marker::UniversalMarker;
15pub use upgrade::UpgradePackages;
16pub use uv_configuration::{
17 AnnotationStyle, DependencyMode, ExcludeNewer, ExcludeNewerChange, ExcludeNewerOverrideChange,
18 ExcludeNewerPackage, ExcludeNewerPackageChange, ExcludeNewerPackageEntry,
19 ExcludeNewerValueChange, ExcludeNewerValueWithSpanRef, ForkStrategy, Prerelease,
20 PrereleaseMode, PrereleasePackage, PrereleasePackageEntry, ResolutionMode,
21 serialize_exclude_newer_package_with_spans,
22};
23pub use uv_distribution_types::{ExcludeNewerOverride, ExcludeNewerSpan, ExcludeNewerValue};
24pub use uv_resolver_types::{Flexibility, Options, OptionsBuilder};
25pub use version_map::VersionMap;
26pub use yanks::AllowedYanks;
27
28use uv_resolver_types::{graph_ops, universal_marker};
29
30type FxHashbrownSet<T> = hashbrown::HashSet<T, rustc_hash::FxBuildHasher>;
36
37type FxHashbrownMap<K, V> = hashbrown::HashMap<K, V, rustc_hash::FxBuildHasher>;
38
39mod candidate_selector;
40mod dependency_provider;
41mod error;
42mod exclusions;
43mod flat_index;
44mod fork_indexes;
45mod fork_urls;
46mod manifest;
47mod marker;
48mod pins;
49mod preferences;
50mod prerelease;
51pub mod pubgrub;
52mod python_requirement;
53mod redirect;
54mod resolution;
55mod resolution_mode;
56mod resolver;
57mod upgrade;
58mod version_map;
59mod yanks;