diff --git a/crates/distribution-types/src/resolution.rs b/crates/distribution-types/src/resolution.rs index 82717177694ee..b4bec48f42d83 100644 --- a/crates/distribution-types/src/resolution.rs +++ b/crates/distribution-types/src/resolution.rs @@ -99,16 +99,16 @@ impl Diagnostic for ResolutionDiagnostic { fn message(&self) -> String { match self { Self::MissingExtra { dist, extra } => { - format!("The package `{dist}` does not have an extra named `{extra}`.") + format!("The package `{dist}` does not have an extra named `{extra}`") } Self::MissingDev { dist, dev } => { - format!("The package `{dist}` does not have a development dependency group named `{dev}`.") + format!("The package `{dist}` does not have a development dependency group named `{dev}`") } Self::YankedVersion { dist, reason } => { if let Some(reason) = reason { - format!("`{dist}` is yanked (reason: \"{reason}\").") + format!("`{dist}` is yanked (reason: \"{reason}\")") } else { - format!("`{dist}` is yanked.") + format!("`{dist}` is yanked") } } } diff --git a/crates/uv-auth/src/credentials.rs b/crates/uv-auth/src/credentials.rs index 95dc6554aa578..535dbc734982f 100644 --- a/crates/uv-auth/src/credentials.rs +++ b/crates/uv-auth/src/credentials.rs @@ -167,10 +167,10 @@ impl Credentials { let mut buf = String::new(); decoder .read_to_string(&mut buf) - .expect("HTTP Basic Authentication should be base64 encoded."); + .expect("HTTP Basic Authentication should be base64 encoded"); let (username, password) = buf .split_once(':') - .expect("HTTP Basic Authentication should include a `:` separator."); + .expect("HTTP Basic Authentication should include a `:` separator"); let username = if username.is_empty() { None } else { diff --git a/crates/uv-cli/src/compat.rs b/crates/uv-cli/src/compat.rs index 6288ab91411f1..25edf9aec28d4 100644 --- a/crates/uv-cli/src/compat.rs +++ b/crates/uv-cli/src/compat.rs @@ -73,23 +73,23 @@ impl CompatArgs for PipCompileCompatArgs { fn validate(&self) -> Result<()> { if self.allow_unsafe { warn_user!( - "pip-compile's `--allow-unsafe` has no effect (uv can safely pin `pip` and other packages)." + "pip-compile's `--allow-unsafe` has no effect (uv can safely pin `pip` and other packages)" ); } if self.no_allow_unsafe { - warn_user!("pip-compile's `--no-allow-unsafe` has no effect (uv can safely pin `pip` and other packages)."); + warn_user!("pip-compile's `--no-allow-unsafe` has no effect (uv can safely pin `pip` and other packages)"); } if self.reuse_hashes { return Err(anyhow!( - "pip-compile's `--reuse-hashes` is unsupported (uv doesn't reuse hashes)." + "pip-compile's `--reuse-hashes` is unsupported (uv doesn't reuse hashes)" )); } if self.no_reuse_hashes { warn_user!( - "pip-compile's `--no-reuse-hashes` has no effect (uv doesn't reuse hashes)." + "pip-compile's `--no-reuse-hashes` has no effect (uv doesn't reuse hashes)" ); } @@ -97,12 +97,12 @@ impl CompatArgs for PipCompileCompatArgs { match resolver { Resolver::Backtracking => { warn_user!( - "pip-compile's `--resolver=backtracking` has no effect (uv always backtracks)." + "pip-compile's `--resolver=backtracking` has no effect (uv always backtracks)" ); } Resolver::Legacy => { return Err(anyhow!( - "pip-compile's `--resolver=legacy` is unsupported (uv always backtracks)." + "pip-compile's `--resolver=legacy` is unsupported (uv always backtracks)" )); } } @@ -110,59 +110,59 @@ impl CompatArgs for PipCompileCompatArgs { if self.max_rounds.is_some() { return Err(anyhow!( - "pip-compile's `--max-rounds` is unsupported (uv always resolves until convergence)." + "pip-compile's `--max-rounds` is unsupported (uv always resolves until convergence)" )); } if self.client_cert.is_some() { return Err(anyhow!( - "pip-compile's `--client-cert` is unsupported (uv doesn't support dedicated client certificates)." + "pip-compile's `--client-cert` is unsupported (uv doesn't support dedicated client certificates)" )); } if self.trusted_host.is_some() { return Err(anyhow!( - "pip-compile's `--trusted-host` is unsupported (uv always requires HTTPS)." + "pip-compile's `--trusted-host` is unsupported (uv always requires HTTPS)" )); } if self.emit_trusted_host { return Err(anyhow!( - "pip-compile's `--emit-trusted-host` is unsupported (uv always requires HTTPS)." + "pip-compile's `--emit-trusted-host` is unsupported (uv always requires HTTPS)" )); } if self.no_emit_trusted_host { warn_user!( - "pip-compile's `--no-emit-trusted-host` has no effect (uv never emits trusted hosts)." + "pip-compile's `--no-emit-trusted-host` has no effect (uv never emits trusted hosts)" ); } if self.config.is_some() { return Err(anyhow!( - "pip-compile's `--config` is unsupported (uv does not use a configuration file)." + "pip-compile's `--config` is unsupported (uv does not use a configuration file)" )); } if self.no_config { warn_user!( - "pip-compile's `--no-config` has no effect (uv does not use a configuration file)." + "pip-compile's `--no-config` has no effect (uv does not use a configuration file)" ); } if self.emit_options { return Err(anyhow!( - "pip-compile's `--emit-options` is unsupported (uv never emits options)." + "pip-compile's `--emit-options` is unsupported (uv never emits options)" )); } if self.no_emit_options { - warn_user!("pip-compile's `--no-emit-options` has no effect (uv never emits options)."); + warn_user!("pip-compile's `--no-emit-options` has no effect (uv never emits options)"); } if self.pip_args.is_some() { return Err(anyhow!( - "pip-compile's `--pip-args` is unsupported (try passing arguments to uv directly)." + "pip-compile's `--pip-args` is unsupported (try passing arguments to uv directly)" )); } @@ -191,11 +191,11 @@ impl CompatArgs for PipListCompatArgs { /// `--outdated`), this method will return an error. fn validate(&self) -> Result<()> { if self.disable_pip_version_check { - warn_user!("pip's `--disable-pip-version-check` has no effect."); + warn_user!("pip's `--disable-pip-version-check` has no effect"); } if self.outdated { - return Err(anyhow!("pip's `--outdated` is unsupported.")); + return Err(anyhow!("pip's `--outdated` is unsupported")); } Ok(()) @@ -245,49 +245,49 @@ impl CompatArgs for PipSyncCompatArgs { fn validate(&self) -> Result<()> { if self.ask { return Err(anyhow!( - "pip-sync's `--ask` is unsupported (uv never asks for confirmation)." + "pip-sync's `--ask` is unsupported (uv never asks for confirmation)" )); } if self.python_executable.is_some() { return Err(anyhow!( - "pip-sync's `--python-executable` is unsupported (to install into a separate Python environment, try setting `VIRTUAL_ENV` instead)." + "pip-sync's `--python-executable` is unsupported (to install into a separate Python environment, try setting `VIRTUAL_ENV` instead)" )); } if self.user { return Err(anyhow!( - "pip-sync's `--user` is unsupported (use a virtual environment instead)." + "pip-sync's `--user` is unsupported (use a virtual environment instead)" )); } if self.client_cert.is_some() { return Err(anyhow!( - "pip-sync's `--client-cert` is unsupported (uv doesn't support dedicated client certificates)." + "pip-sync's `--client-cert` is unsupported (uv doesn't support dedicated client certificates)" )); } if self.trusted_host.is_some() { return Err(anyhow!( - "pip-sync's `--trusted-host` is unsupported (uv always requires HTTPS)." + "pip-sync's `--trusted-host` is unsupported (uv always requires HTTPS)" )); } if self.config.is_some() { return Err(anyhow!( - "pip-sync's `--config` is unsupported (uv does not use a configuration file)." + "pip-sync's `--config` is unsupported (uv does not use a configuration file)" )); } if self.no_config { warn_user!( - "pip-sync's `--no-config` has no effect (uv does not use a configuration file)." + "pip-sync's `--no-config` has no effect (uv does not use a configuration file)" ); } if self.pip_args.is_some() { return Err(anyhow!( - "pip-sync's `--pip-args` is unsupported (try passing arguments to uv directly)." + "pip-sync's `--pip-args` is unsupported (try passing arguments to uv directly)" )); } @@ -332,28 +332,28 @@ impl CompatArgs for VenvCompatArgs { fn validate(&self) -> Result<()> { if self.clear { warn_user!( - "virtualenv's `--clear` has no effect (uv always clears the virtual environment)." + "virtualenv's `--clear` has no effect (uv always clears the virtual environment)" ); } if self.no_seed { warn_user!( - "virtualenv's `--no-seed` has no effect (uv omits seed packages by default)." + "virtualenv's `--no-seed` has no effect (uv omits seed packages by default)" ); } if self.no_pip { - warn_user!("virtualenv's `--no-pip` has no effect (uv omits `pip` by default)."); + warn_user!("virtualenv's `--no-pip` has no effect (uv omits `pip` by default)"); } if self.no_setuptools { warn_user!( - "virtualenv's `--no-setuptools` has no effect (uv omits `setuptools` by default)." + "virtualenv's `--no-setuptools` has no effect (uv omits `setuptools` by default)" ); } if self.no_wheel { - warn_user!("virtualenv's `--no-wheel` has no effect (uv omits `wheel` by default)."); + warn_user!("virtualenv's `--no-wheel` has no effect (uv omits `wheel` by default)"); } Ok(()) @@ -381,12 +381,12 @@ impl CompatArgs for PipInstallCompatArgs { /// return an error. fn validate(&self) -> Result<()> { if self.disable_pip_version_check { - warn_user!("pip's `--disable-pip-version-check` has no effect."); + warn_user!("pip's `--disable-pip-version-check` has no effect"); } if self.user { return Err(anyhow!( - "pip's `--user` is unsupported (use a virtual environment instead)." + "pip's `--user` is unsupported (use a virtual environment instead)" )); } @@ -412,7 +412,7 @@ impl CompatArgs for PipGlobalCompatArgs { /// return an error. fn validate(&self) -> Result<()> { if self.disable_pip_version_check { - warn_user!("pip's `--disable-pip-version-check` has no effect."); + warn_user!("pip's `--disable-pip-version-check` has no effect"); } Ok(()) diff --git a/crates/uv-client/src/base_client.rs b/crates/uv-client/src/base_client.rs index a92c9960c91f7..a237e981d5877 100644 --- a/crates/uv-client/src/base_client.rs +++ b/crates/uv-client/src/base_client.rs @@ -127,7 +127,7 @@ impl<'a> BaseClientBuilder<'a> { value.parse::() .or_else(|_| { // On parse error, warn and use the default timeout - warn_user_once!("Ignoring invalid value from environment for UV_HTTP_TIMEOUT. Expected integer number of seconds, got \"{value}\"."); + warn_user_once!("Ignoring invalid value from environment for `UV_HTTP_TIMEOUT`. Expected an integer number of seconds, got \"{value}\"."); Ok(default_timeout) }) }) @@ -175,7 +175,7 @@ impl<'a> BaseClientBuilder<'a> { client_core }; - client_core.build().expect("Failed to build HTTP client.") + client_core.build().expect("Failed to build HTTP client") }); // Wrap in any relevant middleware. diff --git a/crates/uv-client/src/error.rs b/crates/uv-client/src/error.rs index 0c88d91d82a7e..afa86b54478f8 100644 --- a/crates/uv-client/src/error.rs +++ b/crates/uv-client/src/error.rs @@ -151,18 +151,18 @@ pub enum ErrorKind { #[error(transparent)] DistInfo(#[from] install_wheel_rs::Error), - #[error("{0} isn't available locally, but making network requests to registries was banned.")] + #[error("{0} isn't available locally, but making network requests to registries was banned")] NoIndex(String), /// The package was not found in the registry. /// /// Make sure the package name is spelled correctly and that you've /// configured the right registry to fetch it from. - #[error("Package `{0}` was not found in the registry.")] + #[error("Package `{0}` was not found in the registry")] PackageNotFound(String), /// The package was not found in the local (file-based) index. - #[error("Package `{0}` was not found in the local index.")] + #[error("Package `{0}` was not found in the local index")] FileNotFound(String), /// The metadata file could not be parsed. diff --git a/crates/uv-client/tests/user_agent_version.rs b/crates/uv-client/tests/user_agent_version.rs index bed5d829f106d..7762d00cfe77e 100644 --- a/crates/uv-client/tests/user_agent_version.rs +++ b/crates/uv-client/tests/user_agent_version.rs @@ -167,7 +167,7 @@ async fn test_user_agent_has_linehaul() -> Result<()> { // Unpack User-Agent with linehaul let (uv_version, uv_linehaul) = body .split_once(' ') - .expect("Failed to split User-Agent header."); + .expect("Failed to split User-Agent header"); // Deserializing Linehaul let linehaul: LineHaul = serde_json::from_str(uv_linehaul)?; diff --git a/crates/uv-distribution/src/metadata/lowering.rs b/crates/uv-distribution/src/metadata/lowering.rs index c0c741c251709..307f1ba7121f8 100644 --- a/crates/uv-distribution/src/metadata/lowering.rs +++ b/crates/uv-distribution/src/metadata/lowering.rs @@ -93,7 +93,7 @@ pub(crate) fn lower_requirement( }; if preview.is_disabled() { - warn_user_once!("`uv.sources` is experimental and may change without warning."); + warn_user_once!("`uv.sources` is experimental and may change without warning"); } let source = match source { diff --git a/crates/uv-distribution/src/pyproject_mut.rs b/crates/uv-distribution/src/pyproject_mut.rs index 39b7d5ca55b7b..005853a21404f 100644 --- a/crates/uv-distribution/src/pyproject_mut.rs +++ b/crates/uv-distribution/src/pyproject_mut.rs @@ -26,7 +26,7 @@ pub enum Error { MalformedDependencies, #[error("Sources in `pyproject.toml` are malformed")] MalformedSources, - #[error("Cannot perform ambiguous update; multiple entries with matching package names.")] + #[error("Cannot perform ambiguous update; found multiple entries with matching package names")] Ambiguous, } diff --git a/crates/uv-installer/src/site_packages.rs b/crates/uv-installer/src/site_packages.rs index d70ff6c1d9b2b..621fe7360e6e1 100644 --- a/crates/uv-installer/src/site_packages.rs +++ b/crates/uv-installer/src/site_packages.rs @@ -428,26 +428,26 @@ impl Diagnostic for SitePackagesDiagnostic { version, requires_python, } => format!( - "The package `{package}` requires Python {requires_python}, but `{version}` is installed." + "The package `{package}` requires Python {requires_python}, but `{version}` is installed" ), Self::MissingDependency { package, requirement, } => { - format!("The package `{package}` requires `{requirement}`, but it's not installed.") + format!("The package `{package}` requires `{requirement}`, but it's not installed") } Self::IncompatibleDependency { package, version, requirement, } => format!( - "The package `{package}` requires `{requirement}`, but `{version}` is installed." + "The package `{package}` requires `{requirement}`, but `{version}` is installed" ), Self::DuplicatePackage { package, paths } => { let mut paths = paths.clone(); paths.sort(); format!( - "The package `{package}` has multiple installed distributions:{}", + "The package `{package}` has multiple installed distributions: {}", paths.iter().fold(String::new(), |acc, path| acc + &format!("\n - {}", path.display())) ) } diff --git a/crates/uv-python/src/discovery.rs b/crates/uv-python/src/discovery.rs index 769966491f39a..81f8f93bc588f 100644 --- a/crates/uv-python/src/discovery.rs +++ b/crates/uv-python/src/discovery.rs @@ -898,7 +898,7 @@ fn warn_on_unsupported_python(interpreter: &Interpreter) { // Warn on usage with an unsupported Python version if interpreter.python_tuple() < (3, 8) { warn_user_once!( - "uv is only compatible with Python 3.8+, found Python {}.", + "uv is only compatible with Python >=3.8, found Python {}", interpreter.python_version() ); } diff --git a/crates/uv-python/src/py_launcher.rs b/crates/uv-python/src/py_launcher.rs index c49627939f813..213d3f53291ca 100644 --- a/crates/uv-python/src/py_launcher.rs +++ b/crates/uv-python/src/py_launcher.rs @@ -24,9 +24,9 @@ pub enum Error { stdout: String, stderr: String, }, - #[error("Failed to run `py --list-paths` to find Python installations.")] + #[error("Failed to run `py --list-paths` to find Python installations")] Io(#[source] io::Error), - #[error("The `py` launcher could not be found.")] + #[error("The `py` launcher could not be found")] NotFound, } diff --git a/crates/uv-resolver/src/preferences.rs b/crates/uv-resolver/src/preferences.rs index 9800fce952440..a4e1cbbb0c3a7 100644 --- a/crates/uv-resolver/src/preferences.rs +++ b/crates/uv-resolver/src/preferences.rs @@ -35,17 +35,17 @@ impl Preference { let Some(VersionOrUrl::VersionSpecifier(specifier)) = requirement.version_or_url.as_ref() else { - trace!("Excluding {requirement} from preferences due to non-version specifier."); + trace!("Excluding {requirement} from preferences due to non-version specifier"); return Ok(None); }; let [specifier] = specifier.as_ref() else { - trace!("Excluding {requirement} from preferences due to multiple version specifiers."); + trace!("Excluding {requirement} from preferences due to multiple version specifiers"); return Ok(None); }; if *specifier.operator() != Operator::Equal { - trace!("Excluding {requirement} from preferences due to inexact version specifier."); + trace!("Excluding {requirement} from preferences due to inexact version specifier"); return Ok(None); } @@ -128,7 +128,7 @@ impl Preferences { }, )) } else { - trace!("Excluding {preference} from preferences due to unmatched markers."); + trace!("Excluding {preference} from preferences due to unmatched markers"); None } }) diff --git a/crates/uv-resolver/src/resolver/mod.rs b/crates/uv-resolver/src/resolver/mod.rs index f7a443ea84474..e8dff8de3973f 100644 --- a/crates/uv-resolver/src/resolver/mod.rs +++ b/crates/uv-resolver/src/resolver/mod.rs @@ -406,7 +406,7 @@ impl ResolverState ResolverState CString { // ); CString::from_vec_with_nul(child_cmdline).unwrap_or_else(|_| { - eprintln!("Child command line is not correctly null terminated."); + eprintln!("Child command line is not correctly null terminated"); exit_with_status(1) }) } @@ -128,7 +128,7 @@ fn executable_filename() -> CString { } CString::from_vec_with_nul(buffer).unwrap_or_else(|_| { - eprintln!("Executable name is not correctly null terminated."); + eprintln!("Executable name is not correctly null terminated"); exit_with_status(1) }) } @@ -191,13 +191,13 @@ fn find_python_exe(executable_name: &CStr) -> CString { } .is_err() { - print_last_error_and_exit("Failed to set the file pointer to the end of the file."); + print_last_error_and_exit("Failed to set the file pointer to the end of the file"); } let mut read_bytes = bytes_to_read; if unsafe { ReadFile(file_handle, Some(&mut buffer), Some(&mut read_bytes), None) }.is_err() { - print_last_error_and_exit("Failed to read the executable file."); + print_last_error_and_exit("Failed to read the executable file"); } // Truncate the buffer to the actual number of bytes read. @@ -240,7 +240,7 @@ fn find_python_exe(executable_name: &CStr) -> CString { buffer.push(b'\0'); break CString::from_vec_with_nul(buffer).unwrap_or_else(|_| { - eprintln!("Python executable path is not correctly null terminated."); + eprintln!("Python executable path is not correctly null terminated"); exit_with_status(1) }); } else { @@ -249,14 +249,14 @@ fn find_python_exe(executable_name: &CStr) -> CString { bytes_to_read = (path_len + MAGIC_NUMBER.len() + PATH_LEN_SIZE) as u32; if i64::from(bytes_to_read) > file_size { - eprintln!("The length of the python executable path exceeds the file size. Verify that the path length is appended to the end of the launcher script as a u32 in little endian."); + eprintln!("The length of the python executable path exceeds the file size. Verify that the path length is appended to the end of the launcher script as a u32 in little endian"); exit_with_status(1); } } }; if unsafe { CloseHandle(file_handle) }.is_err() { - print_last_error_and_exit("Failed to close file handle."); + print_last_error_and_exit("Failed to close file handle"); } if is_absolute(&path) { @@ -269,13 +269,13 @@ fn find_python_exe(executable_name: &CStr) -> CString { { Some(parent_dir) => parent_dir, None => { - eprintln!("Script path has unknown separator characters."); + eprintln!("Script path has unknown separator characters"); exit_with_status(1) } }; let final_path = [parent_dir, b"\\", path.as_bytes()].concat(); CString::new(final_path).unwrap_or_else(|_| { - eprintln!("Could not construct the absolute path to the Python executable."); + eprintln!("Could not construct the absolute path to the Python executable"); exit_with_status(1) }) } @@ -334,7 +334,7 @@ fn skip_one_argument(arguments: &[u8]) -> &[u8] { fn make_job_object() -> HANDLE { let job = unsafe { CreateJobObjectW(None, None) } - .unwrap_or_else(|_| print_last_error_and_exit("Job creation failed.")); + .unwrap_or_else(|_| print_last_error_and_exit("Job creation failed")); let mut job_info = MaybeUninit::::uninit(); let mut retlen = 0u32; if unsafe { @@ -348,7 +348,7 @@ fn make_job_object() -> HANDLE { } .is_err() { - print_last_error_and_exit("Job information querying failed."); + print_last_error_and_exit("Job information querying failed"); } let mut job_info = unsafe { job_info.assume_init() }; job_info.BasicLimitInformation.LimitFlags |= JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE; @@ -363,7 +363,7 @@ fn make_job_object() -> HANDLE { } .is_err() { - print_last_error_and_exit("Job information setting failed."); + print_last_error_and_exit("Job information setting failed"); } job } @@ -373,11 +373,11 @@ fn spawn_child(si: &STARTUPINFOA, child_cmdline: CString) -> HANDLE { if (si.dwFlags & STARTF_USESTDHANDLES).0 != 0 { // ignore errors, if the handles are not inheritable/valid, then nothing we can do unsafe { SetHandleInformation(si.hStdInput, HANDLE_FLAG_INHERIT.0, HANDLE_FLAG_INHERIT) } - .unwrap_or_else(|_| eprintln!("Making stdin inheritable failed.")); + .unwrap_or_else(|_| eprintln!("Making stdin inheritable failed")); unsafe { SetHandleInformation(si.hStdOutput, HANDLE_FLAG_INHERIT.0, HANDLE_FLAG_INHERIT) } - .unwrap_or_else(|_| eprintln!("Making stdout inheritable failed.")); + .unwrap_or_else(|_| eprintln!("Making stdout inheritable failed")); unsafe { SetHandleInformation(si.hStdError, HANDLE_FLAG_INHERIT.0, HANDLE_FLAG_INHERIT) } - .unwrap_or_else(|_| eprintln!("Making stderr inheritable failed.")); + .unwrap_or_else(|_| eprintln!("Making stderr inheritable failed")); } let mut child_process_info = MaybeUninit::::uninit(); unsafe { @@ -397,11 +397,11 @@ fn spawn_child(si: &STARTUPINFOA, child_cmdline: CString) -> HANDLE { ) } .unwrap_or_else(|_| { - print_last_error_and_exit("Failed to spawn the python child process."); + print_last_error_and_exit("Failed to spawn the python child process"); }); let child_process_info = unsafe { child_process_info.assume_init() }; unsafe { CloseHandle(child_process_info.hThread) }.unwrap_or_else(|_| { - print_last_error_and_exit("Failed to close handle to python child process main thread."); + print_last_error_and_exit("Failed to close handle to python child process main thread"); }); // Return handle to child process. child_process_info.hProcess @@ -464,14 +464,14 @@ fn clear_app_starting_state(child_handle: HANDLE) { unsafe { // End the launcher's "app starting" cursor state. PostMessageA(None, 0, None, None).unwrap_or_else(|_| { - eprintln!("Failed to post a message to specified window."); + eprintln!("Failed to post a message to specified window"); }); if GetMessageA(msg.as_mut_ptr(), None, 0, 0) != TRUE { - eprintln!("Failed to retrieve posted window message."); + eprintln!("Failed to retrieve posted window message"); } // Proxy the child's input idle event. if WaitForInputIdle(child_handle, INFINITE) != 0 { - eprintln!("Failed to wait for input from window."); + eprintln!("Failed to wait for input from window"); } // Signal the process input idle event by creating a window and pumping // sent messages. The window class isn't important, so just use the @@ -493,7 +493,7 @@ fn clear_app_starting_state(child_handle: HANDLE) { // Process all sent messages and signal input idle. _ = PeekMessageA(msg.as_mut_ptr(), hwnd, 0, 0, PEEK_MESSAGE_REMOVE_TYPE(0)); DestroyWindow(hwnd).unwrap_or_else(|_| { - print_last_error_and_exit("Failed to destroy temporary window."); + print_last_error_and_exit("Failed to destroy temporary window"); }); } } @@ -509,7 +509,7 @@ pub fn bounce(is_gui: bool) -> ! { let job = make_job_object(); if unsafe { AssignProcessToJobObject(job, child_handle) }.is_err() { - print_last_error_and_exit("Failed to assign child process to the job.") + print_last_error_and_exit("Failed to assign child process to the job") } // (best effort) Close all the handles that we can @@ -518,7 +518,7 @@ pub fn bounce(is_gui: bool) -> ! { // (best effort) Switch to some innocuous directory, so we don't hold the original cwd open. // See distlib/PC/launcher.c::switch_working_directory if std::env::set_current_dir(std::env::temp_dir()).is_err() { - eprintln!("Failed to set cwd to temp dir."); + eprintln!("Failed to set cwd to temp dir"); } // We want to ignore control-C/control-Break/logout/etc.; the same event will @@ -528,7 +528,7 @@ pub fn bounce(is_gui: bool) -> ! { } // See distlib/PC/launcher.c::control_key_handler unsafe { SetConsoleCtrlHandler(Some(control_key_handler), true) }.unwrap_or_else(|_| { - print_last_error_and_exit("Control handler setting failed."); + print_last_error_and_exit("Control handler setting failed"); }); if is_gui { @@ -538,7 +538,7 @@ pub fn bounce(is_gui: bool) -> ! { _ = unsafe { WaitForSingleObject(child_handle, INFINITE) }; let mut exit_code = 0u32; if unsafe { GetExitCodeProcess(child_handle, &mut exit_code) }.is_err() { - print_last_error_and_exit("Failed to get exit code of child process."); + print_last_error_and_exit("Failed to get exit code of child process"); } exit_with_status(exit_code); } diff --git a/crates/uv/src/commands/pip/uninstall.rs b/crates/uv/src/commands/pip/uninstall.rs index de24e4928ae7c..d0180cda2bf8d 100644 --- a/crates/uv/src/commands/pip/uninstall.rs +++ b/crates/uv/src/commands/pip/uninstall.rs @@ -145,7 +145,7 @@ pub(crate) async fn pip_uninstall( if installed.is_empty() { writeln!( printer.stderr(), - "{}{} Skipping {} as it is not installed.", + "{}{} Skipping {} as it is not installed", "warning".yellow().bold(), ":".bold(), package.as_ref().bold() @@ -161,7 +161,7 @@ pub(crate) async fn pip_uninstall( if installed.is_empty() { writeln!( printer.stderr(), - "{}{} Skipping {} as it is not installed.", + "{}{} Skipping {} as it is not installed", "warning".yellow().bold(), ":".bold(), url.as_ref().bold() @@ -180,7 +180,7 @@ pub(crate) async fn pip_uninstall( if distributions.is_empty() { writeln!( printer.stderr(), - "{}{} No packages to uninstall.", + "{}{} No packages to uninstall", "warning".yellow().bold(), ":".bold(), )?; diff --git a/crates/uv/src/commands/project/add.rs b/crates/uv/src/commands/project/add.rs index 8ad36ccfcd9f1..6a65cb35651fb 100644 --- a/crates/uv/src/commands/project/add.rs +++ b/crates/uv/src/commands/project/add.rs @@ -49,7 +49,7 @@ pub(crate) async fn add( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv add` is experimental and may change without warning."); + warn_user_once!("`uv add` is experimental and may change without warning"); } // Find the project in the workspace. diff --git a/crates/uv/src/commands/project/lock.rs b/crates/uv/src/commands/project/lock.rs index 3f3175f5e58ae..7481334022193 100644 --- a/crates/uv/src/commands/project/lock.rs +++ b/crates/uv/src/commands/project/lock.rs @@ -44,7 +44,7 @@ pub(crate) async fn lock( printer: Printer, ) -> anyhow::Result { if preview.is_disabled() { - warn_user_once!("`uv lock` is experimental and may change without warning."); + warn_user_once!("`uv lock` is experimental and may change without warning"); } // Find the project requirements. @@ -384,7 +384,7 @@ pub(super) async fn do_lock( // The lockfile did not contain enough information to obtain a resolution, fallback // to a fresh resolve. None => { - debug!("Starting clean resolution."); + debug!("Starting clean resolution"); // Create a build dispatch. let build_dispatch = BuildDispatch::new( diff --git a/crates/uv/src/commands/project/remove.rs b/crates/uv/src/commands/project/remove.rs index 492acd91b7393..5715631811d5f 100644 --- a/crates/uv/src/commands/project/remove.rs +++ b/crates/uv/src/commands/project/remove.rs @@ -34,7 +34,7 @@ pub(crate) async fn remove( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv remove` is experimental and may change without warning."); + warn_user_once!("`uv remove` is experimental and may change without warning"); } // Find the project in the workspace. diff --git a/crates/uv/src/commands/project/run.rs b/crates/uv/src/commands/project/run.rs index a43842019980c..36da04ed877a9 100644 --- a/crates/uv/src/commands/project/run.rs +++ b/crates/uv/src/commands/project/run.rs @@ -57,7 +57,7 @@ pub(crate) async fn run( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv run` is experimental and may change without warning."); + warn_user_once!("`uv run` is experimental and may change without warning"); } // Parse the input command. diff --git a/crates/uv/src/commands/project/sync.rs b/crates/uv/src/commands/project/sync.rs index 0de4b91239b11..a3a1c896a716d 100644 --- a/crates/uv/src/commands/project/sync.rs +++ b/crates/uv/src/commands/project/sync.rs @@ -41,7 +41,7 @@ pub(crate) async fn sync( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv sync` is experimental and may change without warning."); + warn_user_once!("`uv sync` is experimental and may change without warning"); } // Identify the project diff --git a/crates/uv/src/commands/project/tree.rs b/crates/uv/src/commands/project/tree.rs index d389a15e43d1d..6391527520b0d 100644 --- a/crates/uv/src/commands/project/tree.rs +++ b/crates/uv/src/commands/project/tree.rs @@ -43,7 +43,7 @@ pub(crate) async fn tree( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv tree` is experimental and may change without warning."); + warn_user_once!("`uv tree` is experimental and may change without warning"); } // Find the project requirements. diff --git a/crates/uv/src/commands/python/dir.rs b/crates/uv/src/commands/python/dir.rs index f5cebc460d0f3..40c756348fb3f 100644 --- a/crates/uv/src/commands/python/dir.rs +++ b/crates/uv/src/commands/python/dir.rs @@ -10,7 +10,7 @@ use uv_warnings::warn_user_once; /// Show the toolchain directory. pub(crate) fn dir(preview: PreviewMode) -> anyhow::Result<()> { if preview.is_disabled() { - warn_user_once!("`uv python dir` is experimental and may change without warning."); + warn_user_once!("`uv python dir` is experimental and may change without warning"); } let installed_toolchains = ManagedPythonInstallations::from_settings() .context("Failed to initialize toolchain settings")?; diff --git a/crates/uv/src/commands/python/find.rs b/crates/uv/src/commands/python/find.rs index d8992e3068be0..476e016d1a05a 100644 --- a/crates/uv/src/commands/python/find.rs +++ b/crates/uv/src/commands/python/find.rs @@ -20,7 +20,7 @@ pub(crate) async fn find( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv python find` is experimental and may change without warning."); + warn_user_once!("`uv python find` is experimental and may change without warning"); } let request = match request { diff --git a/crates/uv/src/commands/python/install.rs b/crates/uv/src/commands/python/install.rs index ca05ae06b47f4..b258314f2ed1b 100644 --- a/crates/uv/src/commands/python/install.rs +++ b/crates/uv/src/commands/python/install.rs @@ -35,7 +35,7 @@ pub(crate) async fn install( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv python install` is experimental and may change without warning."); + warn_user_once!("`uv python install` is experimental and may change without warning"); } let start = std::time::Instant::now(); diff --git a/crates/uv/src/commands/python/list.rs b/crates/uv/src/commands/python/list.rs index e327625767702..d64fb4c557286 100644 --- a/crates/uv/src/commands/python/list.rs +++ b/crates/uv/src/commands/python/list.rs @@ -38,7 +38,7 @@ pub(crate) async fn list( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv python list` is experimental and may change without warning."); + warn_user_once!("`uv python list` is experimental and may change without warning"); } let download_request = match kinds { diff --git a/crates/uv/src/commands/python/pin.rs b/crates/uv/src/commands/python/pin.rs index b1564b308fb09..bcb7b81bb88db 100644 --- a/crates/uv/src/commands/python/pin.rs +++ b/crates/uv/src/commands/python/pin.rs @@ -26,7 +26,7 @@ pub(crate) async fn pin( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv python pin` is experimental and may change without warning."); + warn_user_once!("`uv python pin` is experimental and may change without warning"); } let Some(request) = request else { @@ -37,7 +37,7 @@ pub(crate) async fn pin( } return Ok(ExitStatus::Success); } - bail!("No pinned Python version found.") + bail!("No pinned Python version found") }; let request = PythonRequest::parse(&request); diff --git a/crates/uv/src/commands/python/uninstall.rs b/crates/uv/src/commands/python/uninstall.rs index d955d25c61b2c..2c7a5ef6398b1 100644 --- a/crates/uv/src/commands/python/uninstall.rs +++ b/crates/uv/src/commands/python/uninstall.rs @@ -25,7 +25,7 @@ pub(crate) async fn uninstall( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv python uninstall` is experimental and may change without warning."); + warn_user_once!("`uv python uninstall` is experimental and may change without warning"); } let start = std::time::Instant::now(); diff --git a/crates/uv/src/commands/self_update.rs b/crates/uv/src/commands/self_update.rs index 34a80dc1f83af..c65e003c9b83a 100644 --- a/crates/uv/src/commands/self_update.rs +++ b/crates/uv/src/commands/self_update.rs @@ -95,7 +95,7 @@ pub(crate) async fn self_update(printer: Printer) -> Result { printer.stderr(), "{}", format_args!( - "{}{} You're on the latest version of uv ({}).", + "{}{} You're on the latest version of uv ({})", "success".green().bold(), ":".bold(), format!("v{}", env!("CARGO_PKG_VERSION")).bold().white() diff --git a/crates/uv/src/commands/tool/dir.rs b/crates/uv/src/commands/tool/dir.rs index a68cd209d0c6f..f4e7883fbd7f5 100644 --- a/crates/uv/src/commands/tool/dir.rs +++ b/crates/uv/src/commands/tool/dir.rs @@ -10,7 +10,7 @@ use uv_warnings::warn_user_once; /// Show the tool directory. pub(crate) fn dir(bin: bool, preview: PreviewMode) -> anyhow::Result<()> { if preview.is_disabled() { - warn_user_once!("`uv tool dir` is experimental and may change without warning."); + warn_user_once!("`uv tool dir` is experimental and may change without warning"); } if bin { diff --git a/crates/uv/src/commands/tool/install.rs b/crates/uv/src/commands/tool/install.rs index 347d78e565e66..309b9e5d58a8c 100644 --- a/crates/uv/src/commands/tool/install.rs +++ b/crates/uv/src/commands/tool/install.rs @@ -55,7 +55,7 @@ pub(crate) async fn install( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv tool install` is experimental and may change without warning."); + warn_user_once!("`uv tool install` is experimental and may change without warning"); } let client_builder = BaseClientBuilder::new() diff --git a/crates/uv/src/commands/tool/list.rs b/crates/uv/src/commands/tool/list.rs index 89e262899efe2..5bab8da274a85 100644 --- a/crates/uv/src/commands/tool/list.rs +++ b/crates/uv/src/commands/tool/list.rs @@ -20,7 +20,7 @@ pub(crate) async fn list( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv tool list` is experimental and may change without warning."); + warn_user_once!("`uv tool list` is experimental and may change without warning"); } let installed_tools = InstalledTools::from_settings()?; diff --git a/crates/uv/src/commands/tool/run.rs b/crates/uv/src/commands/tool/run.rs index 0170d71ce2626..8c95b84fa5cee 100644 --- a/crates/uv/src/commands/tool/run.rs +++ b/crates/uv/src/commands/tool/run.rs @@ -69,7 +69,7 @@ pub(crate) async fn run( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`{invocation_source}` is experimental and may change without warning."); + warn_user_once!("`{invocation_source}` is experimental and may change without warning"); } let (target, args) = command.split(); diff --git a/crates/uv/src/commands/tool/uninstall.rs b/crates/uv/src/commands/tool/uninstall.rs index 82b8f67b46e16..3da0b3a9ed145 100644 --- a/crates/uv/src/commands/tool/uninstall.rs +++ b/crates/uv/src/commands/tool/uninstall.rs @@ -21,7 +21,7 @@ pub(crate) async fn uninstall( printer: Printer, ) -> Result { if preview.is_disabled() { - warn_user_once!("`uv tool uninstall` is experimental and may change without warning."); + warn_user_once!("`uv tool uninstall` is experimental and may change without warning"); } let installed_tools = InstalledTools::from_settings()?.init()?; diff --git a/crates/uv/src/commands/tool/update_shell.rs b/crates/uv/src/commands/tool/update_shell.rs index 999279fc1248d..068e991bdb2b0 100644 --- a/crates/uv/src/commands/tool/update_shell.rs +++ b/crates/uv/src/commands/tool/update_shell.rs @@ -19,7 +19,7 @@ use crate::printer::Printer; /// Ensure that the executable directory is in PATH. pub(crate) async fn update_shell(preview: PreviewMode, printer: Printer) -> Result { if preview.is_disabled() { - warn_user_once!("`uv tool update-shell` is experimental and may change without warning."); + warn_user_once!("`uv tool update-shell` is experimental and may change without warning"); } let executable_directory = find_executable_directory()?; @@ -36,7 +36,7 @@ pub(crate) async fn update_shell(preview: PreviewMode, printer: Printer) -> Resu "Updated PATH to include executable directory {}", executable_directory.simplified_display().cyan() )?; - writeln!(printer.stderr(), "Restart your shell to apply changes.")?; + writeln!(printer.stderr(), "Restart your shell to apply changes")?; } else { writeln!( printer.stderr(), @@ -58,18 +58,18 @@ pub(crate) async fn update_shell(preview: PreviewMode, printer: Printer) -> Resu } else { // Determine the current shell. let Some(shell) = Shell::from_env() else { - return Err(anyhow::anyhow!("The executable directory {} is not in PATH, but the current shell could not be determined.", executable_directory.simplified_display().cyan())); + return Err(anyhow::anyhow!("The executable directory {} is not in PATH, but the current shell could not be determined", executable_directory.simplified_display().cyan())); }; // Look up the configuration files (e.g., `.bashrc`, `.zshrc`) for the shell. let files = shell.configuration_files(); if files.is_empty() { - return Err(anyhow::anyhow!("The executable directory {} is not in PATH, but updating {shell} is currently unsupported.", executable_directory.simplified_display().cyan())); + return Err(anyhow::anyhow!("The executable directory {} is not in PATH, but updating {shell} is currently unsupported", executable_directory.simplified_display().cyan())); } // Prepare the command (e.g., `export PATH="$HOME/.cargo/bin:$PATH"`). let Some(command) = shell.prepend_path(&executable_directory) else { - return Err(anyhow::anyhow!("The executable directory {} is not in PATH, but the necessary command to update {shell} could not be determined.", executable_directory.simplified_display().cyan())); + return Err(anyhow::anyhow!("The executable directory {} is not in PATH, but the necessary command to update {shell} could not be determined", executable_directory.simplified_display().cyan())); }; // Update each file, as necessary. @@ -133,10 +133,10 @@ pub(crate) async fn update_shell(preview: PreviewMode, printer: Printer) -> Resu } if updated { - writeln!(printer.stderr(), "Restart your shell to apply changes.")?; + writeln!(printer.stderr(), "Restart your shell to apply changes")?; Ok(ExitStatus::Success) } else { - Err(anyhow::anyhow!("The executable directory {} is not in PATH, but the {shell} configuration files are already up-to-date.", executable_directory.simplified_display().cyan())) + Err(anyhow::anyhow!("The executable directory {} is not in PATH, but the {shell} configuration files are already up-to-date", executable_directory.simplified_display().cyan())) } } } diff --git a/crates/uv/tests/cache_prune.rs b/crates/uv/tests/cache_prune.rs index 0da22defdc41e..222537aab59db 100644 --- a/crates/uv/tests/cache_prune.rs +++ b/crates/uv/tests/cache_prune.rs @@ -101,7 +101,7 @@ fn prune_cached_env() { pytest 8.0.0 ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved [N] packages in [TIME] Prepared [N] packages in [TIME] Installed [N] packages in [TIME] diff --git a/crates/uv/tests/edit.rs b/crates/uv/tests/edit.rs index 7027687b5490c..e56ebf79138dd 100644 --- a/crates/uv/tests/edit.rs +++ b/crates/uv/tests/edit.rs @@ -30,7 +30,7 @@ fn add_registry() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv add` is experimental and may change without warning. + warning: `uv add` is experimental and may change without warning Resolved 4 packages in [TIME] Prepared 4 packages in [TIME] Installed 4 packages in [TIME] @@ -118,7 +118,7 @@ fn add_registry() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Audited 4 packages in [TIME] "###); @@ -145,7 +145,7 @@ fn add_git() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 4 packages in [TIME] "###); @@ -155,7 +155,7 @@ fn add_git() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 4 packages in [TIME] Installed 4 packages in [TIME] + anyio==3.7.0 @@ -276,7 +276,7 @@ fn add_git() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Audited 5 packages in [TIME] "###); @@ -303,7 +303,7 @@ fn add_git_raw() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 4 packages in [TIME] "###); @@ -313,7 +313,7 @@ fn add_git_raw() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 4 packages in [TIME] Installed 4 packages in [TIME] + anyio==3.7.0 @@ -422,7 +422,7 @@ fn add_git_raw() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Audited 5 packages in [TIME] "###); diff --git a/crates/uv/tests/lock.rs b/crates/uv/tests/lock.rs index d4ca1846ca568..cb21ae91cd841 100644 --- a/crates/uv/tests/lock.rs +++ b/crates/uv/tests/lock.rs @@ -52,7 +52,7 @@ fn lock_wheel_registry() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 4 packages in [TIME] "###); @@ -116,7 +116,7 @@ fn lock_wheel_registry() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 4 packages in [TIME] Installed 4 packages in [TIME] + anyio==3.7.0 @@ -151,7 +151,7 @@ fn lock_sdist_registry() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 2 packages in [TIME] "###); @@ -190,7 +190,7 @@ fn lock_sdist_registry() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 2 packages in [TIME] Installed 2 packages in [TIME] + project==0.1.0 (from file://[TEMP_DIR]/) @@ -223,7 +223,7 @@ fn lock_sdist_git() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 2 packages in [TIME] "###); @@ -261,7 +261,7 @@ fn lock_sdist_git() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 2 packages in [TIME] Installed 2 packages in [TIME] + project==0.1.0 (from file://[TEMP_DIR]/) @@ -294,7 +294,7 @@ fn lock_wheel_url() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 4 packages in [TIME] "###); @@ -357,7 +357,7 @@ fn lock_wheel_url() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 3 packages in [TIME] Installed 4 packages in [TIME] + anyio==4.3.0 (from https://files.pythonhosted.org/packages/14/fd/2f20c40b45e4fb4324834aea24bd4afdf1143390242c0b33774da0e2e34f/anyio-4.3.0-py3-none-any.whl) @@ -392,7 +392,7 @@ fn lock_sdist_url() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 4 packages in [TIME] "###); @@ -453,7 +453,7 @@ fn lock_sdist_url() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 4 packages in [TIME] Installed 4 packages in [TIME] + anyio==4.3.0 (from https://files.pythonhosted.org/packages/db/4d/3970183622f0330d3c23d9b8a5f52e365e50381fd484d08e3285104333d3/anyio-4.3.0.tar.gz) @@ -491,7 +491,7 @@ fn lock_project_extra() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 5 packages in [TIME] "###); @@ -569,7 +569,7 @@ fn lock_project_extra() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 4 packages in [TIME] Installed 4 packages in [TIME] + anyio==3.7.0 @@ -585,7 +585,7 @@ fn lock_project_extra() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 1 package in [TIME] Installed 1 package in [TIME] + iniconfig==2.0.0 @@ -618,7 +618,7 @@ fn lock_project_with_overrides() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 9 packages in [TIME] "###); @@ -629,7 +629,7 @@ fn lock_project_with_overrides() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 8 packages in [TIME] Installed 8 packages in [TIME] + blinker==1.7.0 @@ -667,7 +667,7 @@ fn lock_dependency_extra() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 10 packages in [TIME] "###); @@ -811,7 +811,7 @@ fn lock_dependency_extra() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 9 packages in [TIME] Installed 9 packages in [TIME] + blinker==1.7.0 @@ -853,7 +853,7 @@ fn lock_conditional_dependency_extra() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 7 packages in [TIME] "###); @@ -1040,7 +1040,7 @@ fn lock_conditional_dependency_extra() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 6 packages in [TIME] Installed 6 packages in [TIME] + certifi==2024.2.2 @@ -1064,7 +1064,7 @@ fn lock_conditional_dependency_extra() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 7 packages in [TIME] Installed 7 packages in [TIME] + certifi==2024.2.2 @@ -1102,7 +1102,7 @@ fn lock_dependency_non_existent_extra() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 9 packages in [TIME] warning: The package `flask==3.0.2` does not have an extra named `foo`. "###); @@ -1233,7 +1233,7 @@ fn lock_dependency_non_existent_extra() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 8 packages in [TIME] Installed 8 packages in [TIME] + blinker==1.7.0 @@ -1272,7 +1272,7 @@ fn lock_upgrade_log() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 9 packages in [TIME] "###); @@ -1402,7 +1402,7 @@ fn lock_upgrade_log() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 9 packages in [TIME] "###); @@ -1424,7 +1424,7 @@ fn lock_upgrade_log() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 9 packages in [TIME] Updating flask v2.3.3 -> v3.0.2 "###); @@ -1574,7 +1574,7 @@ fn lock_upgrade_log_multi_version() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 10 packages in [TIME] "###); @@ -1721,7 +1721,7 @@ fn lock_upgrade_log_multi_version() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 10 packages in [TIME] "###); @@ -1743,7 +1743,7 @@ fn lock_upgrade_log_multi_version() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 9 packages in [TIME] Updating flask v2.3.3, 3.0.0 -> v3.0.2 "###); @@ -1892,7 +1892,7 @@ fn lock_preference() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 2 packages in [TIME] "###); @@ -1947,7 +1947,7 @@ fn lock_preference() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 2 packages in [TIME] "###); @@ -1993,7 +1993,7 @@ fn lock_preference() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 2 packages in [TIME] "###); diff --git a/crates/uv/tests/lock_scenarios.rs b/crates/uv/tests/lock_scenarios.rs index 454430c671ff6..3a15d05dcd59c 100644 --- a/crates/uv/tests/lock_scenarios.rs +++ b/crates/uv/tests/lock_scenarios.rs @@ -70,7 +70,7 @@ fn fork_allows_non_conflicting_non_overlapping_dependencies() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv lock` is experimental and may change without warning. + warning: `uv lock` is experimental and may change without warning Resolved 2 packages in [TIME] "### ); diff --git a/crates/uv/tests/pip_install.rs b/crates/uv/tests/pip_install.rs index 8e2b2c939f309..fcacfe2bd7bc0 100644 --- a/crates/uv/tests/pip_install.rs +++ b/crates/uv/tests/pip_install.rs @@ -5727,7 +5727,7 @@ fn tool_uv_sources_is_in_preview() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv.sources` is experimental and may change without warning. + warning: `uv.sources` is experimental and may change without warning Resolved 1 package in [TIME] Prepared 1 package in [TIME] Installed 1 package in [TIME] diff --git a/crates/uv/tests/python_dir.rs b/crates/uv/tests/python_dir.rs index f78949fcd56f0..69961a163d191 100644 --- a/crates/uv/tests/python_dir.rs +++ b/crates/uv/tests/python_dir.rs @@ -17,6 +17,6 @@ fn python_dir() { [TEMP_DIR]/python ----- stderr ----- - warning: `uv python dir` is experimental and may change without warning. + warning: `uv python dir` is experimental and may change without warning "###); } diff --git a/crates/uv/tests/run.rs b/crates/uv/tests/run.rs index 779776e5ef772..515c10c331591 100644 --- a/crates/uv/tests/run.rs +++ b/crates/uv/tests/run.rs @@ -171,7 +171,7 @@ fn run_args() -> Result<()> { Python 3.12.[X] ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning Resolved 1 package in [TIME] Prepared 1 package in [TIME] Installed 1 package in [TIME] @@ -186,7 +186,7 @@ fn run_args() -> Result<()> { Python 3.12.[X] ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning Resolved 1 package in [TIME] Audited 1 package in [TIME] "###); @@ -324,7 +324,7 @@ fn run_managed_false() -> Result<()> { Python 3.12.[X] ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning "###); Ok(()) @@ -357,7 +357,7 @@ fn run_with() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning Resolved 6 packages in [TIME] Prepared 4 packages in [TIME] Installed 4 packages in [TIME] @@ -378,7 +378,7 @@ fn run_with() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning Resolved 6 packages in [TIME] Audited 4 packages in [TIME] "###); @@ -390,7 +390,7 @@ fn run_with() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning Resolved 6 packages in [TIME] Audited 4 packages in [TIME] Resolved 1 package in [TIME] @@ -424,7 +424,7 @@ fn run_locked() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning error: Unable to find lockfile at `uv.lock`. To create a lockfile, run `uv lock` or `uv sync`. "###); @@ -451,7 +451,7 @@ fn run_locked() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning Resolved 2 packages in [TIME] error: The lockfile at `uv.lock` needs to be updated, but `--locked` was provided. To update the lockfile, run `uv lock`. "###); @@ -472,7 +472,7 @@ fn run_locked() -> Result<()> { Python 3.12.[X] ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning Resolved 2 packages in [TIME] Prepared 2 packages in [TIME] Installed 2 packages in [TIME] @@ -505,7 +505,7 @@ fn run_frozen() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning error: Unable to find lockfile at `uv.lock`. To create a lockfile, run `uv lock` or `uv sync`. "###); @@ -530,7 +530,7 @@ fn run_frozen() -> Result<()> { Python 3.12.[X] ----- stderr ----- - warning: `uv run` is experimental and may change without warning. + warning: `uv run` is experimental and may change without warning Prepared 4 packages in [TIME] Installed 4 packages in [TIME] + anyio==3.7.0 diff --git a/crates/uv/tests/sync.rs b/crates/uv/tests/sync.rs index bff4195a562dc..eae1c7e125cc7 100644 --- a/crates/uv/tests/sync.rs +++ b/crates/uv/tests/sync.rs @@ -30,7 +30,7 @@ fn sync() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Resolved 2 packages in [TIME] Prepared 2 packages in [TIME] Installed 2 packages in [TIME] @@ -65,7 +65,7 @@ fn locked() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning error: Unable to find lockfile at `uv.lock`. To create a lockfile, run `uv lock` or `uv sync`. "###); @@ -92,7 +92,7 @@ fn locked() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Resolved 2 packages in [TIME] error: The lockfile at `uv.lock` needs to be updated, but `--locked` was provided. To update the lockfile, run `uv lock`. "###); @@ -127,7 +127,7 @@ fn frozen() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning error: Unable to find lockfile at `uv.lock`. To create a lockfile, run `uv lock` or `uv sync`. "###); @@ -151,7 +151,7 @@ fn frozen() -> Result<()> { ----- stdout ----- ----- stderr ----- - warning: `uv sync` is experimental and may change without warning. + warning: `uv sync` is experimental and may change without warning Prepared 4 packages in [TIME] Installed 4 packages in [TIME] + anyio==3.7.0 diff --git a/crates/uv/tests/tool_dir.rs b/crates/uv/tests/tool_dir.rs index cd59032e04783..0359e254ac930 100644 --- a/crates/uv/tests/tool_dir.rs +++ b/crates/uv/tests/tool_dir.rs @@ -21,7 +21,7 @@ fn tool_dir() { [TEMP_DIR]/tools ----- stderr ----- - warning: `uv tool dir` is experimental and may change without warning. + warning: `uv tool dir` is experimental and may change without warning "###); } @@ -40,6 +40,6 @@ fn tool_dir_bin() { [TEMP_DIR]/bin ----- stderr ----- - warning: `uv tool dir` is experimental and may change without warning. + warning: `uv tool dir` is experimental and may change without warning "###); } diff --git a/crates/uv/tests/tool_install.rs b/crates/uv/tests/tool_install.rs index a8c41516a9ec1..82875494774dc 100644 --- a/crates/uv/tests/tool_install.rs +++ b/crates/uv/tests/tool_install.rs @@ -33,7 +33,7 @@ fn tool_install() { ----- stdout ----- ----- stderr ----- - warning: `uv tool install` is experimental and may change without warning. + warning: `uv tool install` is experimental and may change without warning Resolved [N] packages in [TIME] Prepared [N] packages in [TIME] Installed [N] packages in [TIME] @@ -109,7 +109,7 @@ fn tool_install() { ----- stdout ----- ----- stderr ----- - warning: `uv tool install` is experimental and may change without warning. + warning: `uv tool install` is experimental and may change without warning Resolved [N] packages in [TIME] Prepared [N] packages in [TIME] Installed [N] packages in [TIME] @@ -192,7 +192,7 @@ fn tool_install_suggest_other_packages_with_executable() { Did you mean `uv tool install fastapi-cli`? ----- stderr ----- - warning: `uv tool install` is experimental and may change without warning. + warning: `uv tool install` is experimental and may change without warning Resolved 35 packages in [TIME] Prepared 35 packages in [TIME] Installed 35 packages in [TIME] @@ -251,7 +251,7 @@ fn tool_install_version() { ----- stdout ----- ----- stderr ----- - warning: `uv tool install` is experimental and may change without warning. + warning: `uv tool install` is experimental and may change without warning Resolved 6 packages in [TIME] Prepared 6 packages in [TIME] Installed 6 packages in [TIME] @@ -337,7 +337,7 @@ fn tool_install_from() { ----- stdout ----- ----- stderr ----- - warning: `uv tool install` is experimental and may change without warning. + warning: `uv tool install` is experimental and may change without warning Resolved 6 packages in [TIME] Prepared 6 packages in [TIME] Installed 6 packages in [TIME] @@ -363,7 +363,7 @@ fn tool_install_from() { ----- stdout ----- ----- stderr ----- - warning: `uv tool install` is experimental and may change without warning. + warning: `uv tool install` is experimental and may change without warning error: Package name (`flask`) provided with `--from` does not match install request (`black`) "###); @@ -380,7 +380,7 @@ fn tool_install_from() { ----- stdout ----- ----- stderr ----- - warning: `uv tool install` is experimental and may change without warning. + warning: `uv tool install` is experimental and may change without warning error: Package requirement (`black==24.3.0`) provided with `--from` conflicts with install request (`black==24.2.0`) "###); } @@ -405,7 +405,7 @@ fn tool_install_already_installed() { ----- stdout ----- ----- stderr ----- - warning: `uv tool install` is experimental and may change without warning. + warning: `uv tool install` is experimental and may change without warning Resolved [N] packages in [TIME] Prepared [N] packages in [TIME] Installed [N] packages in [TIME] diff --git a/crates/uv/tests/tool_list.rs b/crates/uv/tests/tool_list.rs index 0ee0e0a98f5b2..df5ffdc2b22c4 100644 --- a/crates/uv/tests/tool_list.rs +++ b/crates/uv/tests/tool_list.rs @@ -35,7 +35,7 @@ fn tool_list() { - blackd ----- stderr ----- - warning: `uv tool list` is experimental and may change without warning. + warning: `uv tool list` is experimental and may change without warning "###); } @@ -65,7 +65,7 @@ fn tool_list_paths() { - blackd ([TEMP_DIR]/bin/blackd) ----- stderr ----- - warning: `uv tool list` is experimental and may change without warning. + warning: `uv tool list` is experimental and may change without warning "###); } @@ -83,7 +83,7 @@ fn tool_list_empty() { ----- stdout ----- ----- stderr ----- - warning: `uv tool list` is experimental and may change without warning. + warning: `uv tool list` is experimental and may change without warning No tools installed "###); } @@ -113,7 +113,7 @@ fn tool_list_missing_receipt() { ----- stdout ----- ----- stderr ----- - warning: `uv tool list` is experimental and may change without warning. + warning: `uv tool list` is experimental and may change without warning warning: Ignoring malformed tool `black` (run `uv tool uninstall black` to remove) "###); } @@ -163,7 +163,7 @@ fn tool_list_bad_environment() -> Result<()> { - ruff ----- stderr ----- - warning: `uv tool list` is experimental and may change without warning. + warning: `uv tool list` is experimental and may change without warning Python interpreter not found at `[TEMP_DIR]/tools/black/[BIN]/python` "### ); diff --git a/crates/uv/tests/tool_run.rs b/crates/uv/tests/tool_run.rs index 9afcf974d3cbb..79eb609701723 100644 --- a/crates/uv/tests/tool_run.rs +++ b/crates/uv/tests/tool_run.rs @@ -39,7 +39,7 @@ fn tool_run_args() { pytest 8.1.1 ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved [N] packages in [TIME] Prepared [N] packages in [TIME] Installed [N] packages in [TIME] @@ -62,7 +62,7 @@ fn tool_run_args() { pytest 8.1.1 ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved [N] packages in [TIME] "###); } @@ -84,7 +84,7 @@ fn tool_run_at_version() { pytest 8.0.0 ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved 4 packages in [TIME] Prepared 4 packages in [TIME] Installed 4 packages in [TIME] @@ -105,7 +105,7 @@ fn tool_run_at_version() { ----- stdout ----- ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning error: Failed to parse: `pytest@` Caused by: Expected URL pytest@ @@ -123,7 +123,7 @@ fn tool_run_at_version() { ----- stdout ----- ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning error: Distribution not found at: file://[TEMP_DIR]/invalid "###); @@ -154,7 +154,7 @@ fn tool_run_at_version() { - pytest ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved 4 packages in [TIME] Prepared 1 package in [TIME] Installed 4 packages in [TIME] @@ -185,7 +185,7 @@ fn tool_run_from_version() { pytest 8.0.0 ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved 4 packages in [TIME] Prepared 4 packages in [TIME] Installed 4 packages in [TIME] @@ -217,7 +217,7 @@ fn tool_run_suggest_valid_commands() { - blackd ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved 6 packages in [TIME] Prepared 6 packages in [TIME] Installed 6 packages in [TIME] @@ -240,7 +240,7 @@ fn tool_run_suggest_valid_commands() { The executable `fastapi-cli` was not found. ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved 3 packages in [TIME] Prepared 3 packages in [TIME] Installed 3 packages in [TIME] @@ -274,7 +274,7 @@ fn tool_run_warn_executable_not_in_from() { ----- stdout ----- ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved 35 packages in [TIME] Prepared 35 packages in [TIME] Installed 35 packages in [TIME] @@ -344,7 +344,7 @@ fn tool_run_from_install() { Python (CPython) 3.12.[X] ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning "###); // Verify that `--isolated` uses an isolated environment. @@ -361,7 +361,7 @@ fn tool_run_from_install() { Python (CPython) 3.12.[X] ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved 6 packages in [TIME] Prepared 1 package in [TIME] Installed 6 packages in [TIME] @@ -386,7 +386,7 @@ fn tool_run_from_install() { Python (CPython) 3.12.[X] ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved 6 packages in [TIME] Prepared 1 package in [TIME] Installed 6 packages in [TIME] @@ -415,7 +415,7 @@ fn tool_run_from_install() { Python (CPython) 3.12.[X] ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved 7 packages in [TIME] Prepared 1 package in [TIME] Installed 7 packages in [TIME] @@ -443,7 +443,7 @@ fn tool_run_from_install() { Python (CPython) 3.12.[X] ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved 6 packages in [TIME] Prepared 1 package in [TIME] Installed 6 packages in [TIME] @@ -477,7 +477,7 @@ fn tool_run_cache() { Python (CPython) 3.12.[X] ----- stderr ----- - warning: `uv tool run` is experimental and may change without warning. + warning: `uv tool run` is experimental and may change without warning Resolved [N] packages in [TIME] Prepared [N] packages in [TIME] Installed [N] packages in [TIME] diff --git a/crates/uv/tests/tool_uninstall.rs b/crates/uv/tests/tool_uninstall.rs index 64ef34127bd92..36c5ffbec8635 100644 --- a/crates/uv/tests/tool_uninstall.rs +++ b/crates/uv/tests/tool_uninstall.rs @@ -30,7 +30,7 @@ fn tool_uninstall() { ----- stdout ----- ----- stderr ----- - warning: `uv tool uninstall` is experimental and may change without warning. + warning: `uv tool uninstall` is experimental and may change without warning Uninstalled 2 executables: black, blackd "###); @@ -43,7 +43,7 @@ fn tool_uninstall() { ----- stdout ----- ----- stderr ----- - warning: `uv tool list` is experimental and may change without warning. + warning: `uv tool list` is experimental and may change without warning No tools installed "###); @@ -58,7 +58,7 @@ fn tool_uninstall() { ----- stdout ----- ----- stderr ----- - warning: `uv tool install` is experimental and may change without warning. + warning: `uv tool install` is experimental and may change without warning Resolved 6 packages in [TIME] Installed 6 packages in [TIME] + black==24.2.0 @@ -85,7 +85,7 @@ fn tool_uninstall_not_installed() { ----- stdout ----- ----- stderr ----- - warning: `uv tool uninstall` is experimental and may change without warning. + warning: `uv tool uninstall` is experimental and may change without warning error: `black` is not installed "###); } @@ -115,7 +115,7 @@ fn tool_uninstall_missing_receipt() { ----- stdout ----- ----- stderr ----- - warning: `uv tool uninstall` is experimental and may change without warning. + warning: `uv tool uninstall` is experimental and may change without warning Removed dangling environment for `black` "###); } diff --git a/crates/uv/tests/tree.rs b/crates/uv/tests/tree.rs index bc96f9e77a358..ee3da136a2ee5 100644 --- a/crates/uv/tests/tree.rs +++ b/crates/uv/tests/tree.rs @@ -38,7 +38,7 @@ fn nested_dependencies() -> Result<()> { └── threadpoolctl v3.4.0 ----- stderr ----- - warning: `uv tree` is experimental and may change without warning. + warning: `uv tree` is experimental and may change without warning Resolved 6 packages in [TIME] "### ); @@ -84,7 +84,7 @@ fn invert() -> Result<()> { (*) Package tree already displayed ----- stderr ----- - warning: `uv tree` is experimental and may change without warning. + warning: `uv tree` is experimental and may change without warning Resolved 6 packages in [TIME] "### ); @@ -107,7 +107,7 @@ fn invert() -> Result<()> { └── project v0.1.0 ----- stderr ----- - warning: `uv tree` is experimental and may change without warning. + warning: `uv tree` is experimental and may change without warning Resolved 6 packages in [TIME] "### ); @@ -141,7 +141,7 @@ fn frozen() -> Result<()> { └── sniffio v1.3.1 ----- stderr ----- - warning: `uv tree` is experimental and may change without warning. + warning: `uv tree` is experimental and may change without warning Resolved 4 packages in [TIME] "### ); @@ -174,7 +174,7 @@ fn frozen() -> Result<()> { └── sniffio v1.3.1 ----- stderr ----- - warning: `uv tree` is experimental and may change without warning. + warning: `uv tree` is experimental and may change without warning "### );