uv step: checking self subcommand exits; fixes #942 (#971)

* uv step: checking self subcommand exits; fixes #942

* uv: fixing return behavior

---------

Co-authored-by: Lucas Parzianello <lucaspar@users.noreply.github.com>
This commit is contained in:
Lucas Parzianello
2024-10-29 01:40:31 -06:00
committed by GitHub
parent f181a795a6
commit 39f76a3a71

View File

@@ -1032,15 +1032,20 @@ pub fn run_uv(ctx: &ExecutionContext) -> Result<()> {
let uv_exec = require("uv")?;
print_separator("uv");
ctx.run_type()
// try uv self --help first - if it succeeds, we call uv self update
let result = ctx
.run_type()
.execute(&uv_exec)
.args(["self", "update"])
.status_checked()
.ok();
.args(["self", "--help"])
.output_checked();
// ignoring self-update errors, because they are likely due to uv's
// installation being managed by another package manager, in which
// case another step will handle the update.
if result.is_ok() {
ctx.run_type()
.execute(&uv_exec)
.args(["self", "update"])
.status_checked()
.ok();
}
ctx.run_type()
.execute(&uv_exec)