From facd21a6794a36bd77a358f00ee277ad3d4d0520 Mon Sep 17 00:00:00 2001 From: Charlie Marsh Date: Tue, 24 Dec 2024 19:37:46 -0500 Subject: [PATCH] Replace `Option` with `BTreeSet` for members (#10150) --- crates/uv-resolver/src/manifest.rs | 4 ++-- crates/uv/src/commands/pip/compile.rs | 3 ++- crates/uv/src/commands/pip/install.rs | 3 ++- crates/uv/src/commands/pip/operations.rs | 2 +- crates/uv/src/commands/pip/sync.rs | 3 ++- crates/uv/src/commands/project/lock.rs | 2 +- crates/uv/src/commands/project/mod.rs | 5 +++-- 7 files changed, 13 insertions(+), 9 deletions(-) diff --git a/crates/uv-resolver/src/manifest.rs b/crates/uv-resolver/src/manifest.rs index 350fea4a2..949acbccf 100644 --- a/crates/uv-resolver/src/manifest.rs +++ b/crates/uv-resolver/src/manifest.rs @@ -57,7 +57,7 @@ impl Manifest { overrides: Overrides, preferences: Preferences, project: Option, - workspace_members: Option>, + workspace_members: BTreeSet, exclusions: Exclusions, lookaheads: Vec, ) -> Self { @@ -67,7 +67,7 @@ impl Manifest { overrides, preferences, project, - workspace_members: workspace_members.unwrap_or_default(), + workspace_members, exclusions, lookaheads, } diff --git a/crates/uv/src/commands/pip/compile.rs b/crates/uv/src/commands/pip/compile.rs index 2f17cb823..f9d9eefee 100644 --- a/crates/uv/src/commands/pip/compile.rs +++ b/crates/uv/src/commands/pip/compile.rs @@ -1,3 +1,4 @@ +use std::collections::BTreeSet; use std::env; use std::path::Path; @@ -376,7 +377,7 @@ pub(crate) async fn pip_compile( overrides, source_trees, project, - None, + BTreeSet::default(), &extras, preferences, EmptyInstalledPackages, diff --git a/crates/uv/src/commands/pip/install.rs b/crates/uv/src/commands/pip/install.rs index 4532ee21d..6110d43a1 100644 --- a/crates/uv/src/commands/pip/install.rs +++ b/crates/uv/src/commands/pip/install.rs @@ -1,3 +1,4 @@ +use std::collections::BTreeSet; use std::fmt::Write; use itertools::Itertools; @@ -403,7 +404,7 @@ pub(crate) async fn pip_install( overrides, source_trees, project, - None, + BTreeSet::default(), extras, preferences, site_packages.clone(), diff --git a/crates/uv/src/commands/pip/operations.rs b/crates/uv/src/commands/pip/operations.rs index b9ad40512..0e854eb54 100644 --- a/crates/uv/src/commands/pip/operations.rs +++ b/crates/uv/src/commands/pip/operations.rs @@ -93,7 +93,7 @@ pub(crate) async fn resolve( overrides: Vec, source_trees: Vec, mut project: Option, - workspace_members: Option>, + workspace_members: BTreeSet, extras: &ExtrasSpecification, preferences: Vec, installed_packages: InstalledPackages, diff --git a/crates/uv/src/commands/pip/sync.rs b/crates/uv/src/commands/pip/sync.rs index fc072abc9..aa85bc89a 100644 --- a/crates/uv/src/commands/pip/sync.rs +++ b/crates/uv/src/commands/pip/sync.rs @@ -1,3 +1,4 @@ +use std::collections::BTreeSet; use std::fmt::Write; use anyhow::Result; @@ -348,7 +349,7 @@ pub(crate) async fn pip_sync( overrides, source_trees, project, - None, + BTreeSet::default(), &extras, preferences, site_packages.clone(), diff --git a/crates/uv/src/commands/project/lock.rs b/crates/uv/src/commands/project/lock.rs index 5f8f579b2..b77ab955f 100644 --- a/crates/uv/src/commands/project/lock.rs +++ b/crates/uv/src/commands/project/lock.rs @@ -652,7 +652,7 @@ async fn do_lock( source_trees, // The root is always null in workspaces, it "depends on" the projects None, - Some(packages.keys().cloned().collect()), + packages.keys().cloned().collect(), &extras, preferences, EmptyInstalledPackages, diff --git a/crates/uv/src/commands/project/mod.rs b/crates/uv/src/commands/project/mod.rs index 5cb85f3a4..c7d2f0e70 100644 --- a/crates/uv/src/commands/project/mod.rs +++ b/crates/uv/src/commands/project/mod.rs @@ -1,3 +1,4 @@ +use std::collections::BTreeSet; use std::fmt::Write; use std::path::{Path, PathBuf}; @@ -1259,7 +1260,7 @@ pub(crate) async fn resolve_environment<'a>( overrides, source_trees, project, - None, + BTreeSet::default(), &extras, preferences, EmptyInstalledPackages, @@ -1604,7 +1605,7 @@ pub(crate) async fn update_environment( overrides, source_trees, project, - None, + BTreeSet::default(), &extras, preferences, site_packages.clone(),