Skip to content

Commit

Permalink
Omit interpreter path during uv venv with managed Python
Browse files Browse the repository at this point in the history
  • Loading branch information
zanieb committed Jul 22, 2024
1 parent 84b351a commit cbecc8e
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 10 deletions.
6 changes: 6 additions & 0 deletions crates/uv-python/src/discovery.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1244,6 +1244,12 @@ impl PythonRequest {
}
}

impl PythonSource {
pub fn is_managed(&self) -> bool {
return matches!(self, Self::Managed);
}
}

impl PythonPreference {
fn allows(self, source: PythonSource) -> bool {
// If not dealing with a system interpreter source, we don't care about the preference
Expand Down
31 changes: 21 additions & 10 deletions crates/uv/src/commands/venv.rs
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ async fn venv_impl(
}

// Locate the Python interpreter to use in the environment
let interpreter = PythonInstallation::find_or_fetch(
let python = PythonInstallation::find_or_fetch(
interpreter_request,
EnvironmentPreference::OnlySystem,
python_preference,
Expand All @@ -150,21 +150,32 @@ async fn venv_impl(
Some(&reporter),
)
.await
.into_diagnostic()?
.into_interpreter();
.into_diagnostic()?;

let managed = python.source().is_managed();
let interpreter = python.into_interpreter();

// Add all authenticated sources to the cache.
for url in index_locations.urls() {
store_credentials_from_url(url);
}

writeln!(
printer.stderr(),
"Using Python {} interpreter at: {}",
interpreter.python_version(),
interpreter.sys_executable().user_display().cyan()
)
.into_diagnostic()?;
if managed {
writeln!(
printer.stderr(),
"Using Python {}",
interpreter.python_version().cyan()
)
.into_diagnostic()?;
} else {
writeln!(
printer.stderr(),
"Using Python {} interpreter at: {}",
interpreter.python_version(),
interpreter.sys_executable().user_display().cyan()
)
.into_diagnostic()?;
}

writeln!(
printer.stderr(),
Expand Down

0 comments on commit cbecc8e

Please sign in to comment.