chore: upgrade to edition 2024

Co-authored-by: Ehren Bendler <a5ehren@gmail.com>
This commit is contained in:
GideonBear
2025-11-15 18:23:06 +01:00
parent 54a722be21
commit b00c4c1503
25 changed files with 65 additions and 75 deletions

View File

@@ -6,7 +6,7 @@ use std::process::Command;
use color_eyre::eyre::Context;
use color_eyre::eyre::Result;
use color_eyre::eyre::{eyre, OptionExt};
use color_eyre::eyre::{OptionExt, eyre};
use tracing::{debug, error, warn};
use wildmatch::WildMatch;

View File

@@ -10,7 +10,7 @@ use crate::command::CommandExt;
use crate::execution_context::ExecutionContext;
use crate::step::Step;
use crate::terminal::print_separator;
use crate::utils::{require, require_option, PathExt};
use crate::utils::{PathExt, require, require_option};
const EMACS_UPGRADE: &str = include_str!("emacs.el");
#[cfg(windows)]

View File

@@ -1,7 +1,7 @@
use color_eyre::eyre::Context;
use color_eyre::eyre::Result;
use color_eyre::eyre::{eyre, OptionExt};
use jetbrains_toolbox_updater::{find_jetbrains_toolbox, update_jetbrains_toolbox, FindError};
use color_eyre::eyre::{OptionExt, eyre};
use jetbrains_toolbox_updater::{FindError, find_jetbrains_toolbox, update_jetbrains_toolbox};
use regex::bytes::Regex;
use rust_i18n::t;
use semver::Version;
@@ -16,6 +16,7 @@ use std::{fs, io::Write};
use tempfile::tempfile_in;
use tracing::{debug, error, warn};
use crate::HOME_DIR;
use crate::command::{CommandExt, Utf8Output};
use crate::execution_context::ExecutionContext;
use crate::executor::ExecutorOutput;
@@ -23,8 +24,7 @@ use crate::output_changed_message;
use crate::step::Step;
use crate::sudo::SudoExecuteOpts;
use crate::terminal::{print_separator, shell};
use crate::utils::{check_is_python_2_or_shim, require, require_one, require_option, which, PathExt};
use crate::HOME_DIR;
use crate::utils::{PathExt, check_is_python_2_or_shim, require, require_one, require_option, which};
use crate::{
error::{SkipStep, StepFailed, TopgradeError},
terminal::print_warning,
@@ -65,7 +65,9 @@ pub fn run_cargo_update(ctx: &ExecutionContext) -> Result<()> {
.or_else(|| cargo_dir.join("bin/cargo-install-update").if_exists());
let Some(cargo_update) = cargo_update else {
let message = String::from("cargo-update isn't installed so Topgrade can't upgrade cargo packages.\nInstall cargo-update by running `cargo install cargo-update`");
let message = String::from(
"cargo-update isn't installed so Topgrade can't upgrade cargo packages.\nInstall cargo-update by running `cargo install cargo-update`",
);
print_warning(&message);
return Err(SkipStep(message).into());
};
@@ -81,7 +83,9 @@ pub fn run_cargo_update(ctx: &ExecutionContext) -> Result<()> {
if let Some(e) = cargo_cache {
ctx.execute(e).args(["-a"]).status_checked()?;
} else {
let message = String::from("cargo-cache isn't installed so Topgrade can't cleanup cargo packages.\nInstall cargo-cache by running `cargo install cargo-cache`");
let message = String::from(
"cargo-cache isn't installed so Topgrade can't cleanup cargo packages.\nInstall cargo-cache by running `cargo install cargo-cache`",
);
print_warning(message);
}
}
@@ -542,7 +546,7 @@ fn run_vscode_compatible(variant: VSCodeVariant, ctx: &ExecutionContext) -> Resu
return Err(eyre!(output_changed_message!(
&format!("{bin_name} --version"),
"No first line"
)))
)));
}
};
@@ -1239,11 +1243,7 @@ pub fn run_helm_repo_update(ctx: &ExecutionContext) -> Result<()> {
};
}
if success {
Ok(())
} else {
Err(eyre!(StepFailed))
}
if success { Ok(()) } else { Err(eyre!(StepFailed)) }
}
pub fn run_stew(ctx: &ExecutionContext) -> Result<()> {
@@ -1428,8 +1428,7 @@ pub fn run_poetry(ctx: &ExecutionContext) -> Result<()> {
.map_err(|e| SkipStep(format!("Could not find interpreter for {}: {}", poetry.display(), e)))?;
debug!("poetry interpreter: {:?}, args: {:?}", interp, interp_args);
let check_official_install_script =
"import sys; from os import path; print('Y') if path.isfile(path.join(sys.prefix, 'poetry_env')) else print('N')";
let check_official_install_script = "import sys; from os import path; print('Y') if path.isfile(path.join(sys.prefix, 'poetry_env')) else print('N')";
let mut command = Command::new(&interp);
if let Some(args) = interp_args {
command.arg(args);
@@ -1708,7 +1707,10 @@ fn run_jetbrains_ide_generic<const IS_JETBRAINS: bool>(ctx: &ExecutionContext, b
.code()
.ok_or_eyre("Failed to get status code; was killed with signal")?;
if status_code != 1 {
return Err(eyre!("Expected status code 1 ('Only one instance of <IDE> can be run at a time.'), but found status code {}. Output: {output:?}", status_code));
return Err(eyre!(
"Expected status code 1 ('Only one instance of <IDE> can be run at a time.'), but found status code {}. Output: {output:?}",
status_code
));
}
// Don't crash, but don't be silent either
warn!("{name} is already running, can't update it now.");

View File

@@ -4,10 +4,10 @@ use std::path::{Path, PathBuf};
use std::process::{Command, Output, Stdio};
use color_eyre::eyre::Context;
use color_eyre::eyre::{eyre, Result};
use color_eyre::eyre::{Result, eyre};
use console::style;
use futures::stream::{iter, FuturesUnordered, StreamExt};
use glob::{glob_with, MatchOptions};
use futures::stream::{FuturesUnordered, StreamExt, iter};
use glob::{MatchOptions, glob_with};
use tokio::process::Command as AsyncCommand;
use tokio::runtime;
use tracing::{debug, error};
@@ -17,8 +17,8 @@ use crate::execution_context::ExecutionContext;
use crate::step::Step;
use crate::steps::emacs::Emacs;
use crate::terminal::print_separator;
use crate::utils::{require, PathExt};
use crate::{error::SkipStep, terminal::print_warning, HOME_DIR};
use crate::utils::{PathExt, require};
use crate::{HOME_DIR, error::SkipStep, terminal::print_warning};
use etcetera::base_strategy::BaseStrategy;
use rust_i18n::t;

View File

@@ -14,7 +14,7 @@ use tracing::debug;
use crate::command::CommandExt;
use crate::terminal::{print_info, print_separator};
use crate::utils::{require, PathExt};
use crate::utils::{PathExt, require};
use crate::{error::SkipStep, execution_context::ExecutionContext};
enum NPMVariant {
@@ -65,11 +65,7 @@ impl NPM {
/// If the “NPM” version is larger than 8.11.0, we use
/// `--location=global`; otherwise, use `-g`.
fn global_location_arg(&self) -> &str {
if self.is_npm_8() {
"--location=global"
} else {
"-g"
}
if self.is_npm_8() { "--location=global" } else { "-g" }
}
#[cfg(target_os = "linux")]

View File

@@ -6,6 +6,7 @@ use ini::Ini;
use rust_i18n::t;
use tracing::{debug, warn};
use crate::HOME_DIR;
use crate::command::CommandExt;
use crate::error::{SkipStep, TopgradeError};
use crate::execution_context::ExecutionContext;
@@ -14,8 +15,7 @@ use crate::steps::generic::is_wsl;
use crate::steps::os::archlinux;
use crate::sudo::SudoExecuteOpts;
use crate::terminal::{print_separator, prompt_yesno};
use crate::utils::{require, require_one, which, PathExt};
use crate::HOME_DIR;
use crate::utils::{PathExt, require, require_one, which};
static OS_RELEASE_PATH: &str = "/etc/os-release";

View File

@@ -1,6 +1,6 @@
use color_eyre::eyre::Context;
use color_eyre::eyre::Result;
use color_eyre::eyre::{eyre, OptionExt};
use color_eyre::eyre::{OptionExt, eyre};
use etcetera::BaseStrategy;
use ini::Ini;
#[cfg(target_os = "linux")]
@@ -20,10 +20,10 @@ use std::{env::var, path::Path};
use std::{fs, io};
use tracing::{debug, warn};
use crate::XDG_DIRS;
use crate::command::CommandExt;
use crate::sudo::SudoExecuteOpts;
use crate::XDG_DIRS;
use crate::{output_changed_message, HOME_DIR};
use crate::{HOME_DIR, output_changed_message};
#[cfg(target_os = "linux")]
use super::linux::Distribution;
@@ -33,7 +33,7 @@ use crate::execution_context::ExecutionContext;
use crate::executor::Executor;
use crate::step::Step;
use crate::terminal::print_separator;
use crate::utils::{require, PathExt};
use crate::utils::{PathExt, require};
#[cfg(any(target_os = "linux", target_os = "macos"))]
const INTEL_BREW: &str = "/usr/local/bin/brew";

View File

@@ -254,11 +254,7 @@ pub fn microsoft_store(ctx: &ExecutionContext) -> Result<()> {
}
let ret_val = output.stdout.trim();
debug!("Command return value: {}", ret_val);
if ret_val == "0" {
Ok(())
} else {
Err(())
}
if ret_val == "0" { Ok(()) } else { Err(()) }
})?;
println!(
"{}",

View File

@@ -1,15 +1,15 @@
use std::path::PathBuf;
use std::process::Command;
use color_eyre::eyre::Result;
#[cfg(windows)]
use color_eyre::eyre::eyre;
use color_eyre::eyre::Result;
use tracing::debug;
use crate::command::CommandExt;
use crate::execution_context::ExecutionContext;
use crate::terminal;
use crate::utils::{which, PathExt};
use crate::utils::{PathExt, which};
pub struct Powershell {
path: PathBuf,

View File

@@ -2,20 +2,20 @@ use std::env;
use std::path::PathBuf;
use std::process::Command;
use color_eyre::eyre::eyre;
use color_eyre::eyre::Context;
use color_eyre::eyre::Result;
use color_eyre::eyre::eyre;
use etcetera::base_strategy::BaseStrategy;
use crate::command::CommandExt;
use crate::config::TmuxConfig;
use crate::config::TmuxSessionMode;
use crate::terminal::print_separator;
use crate::{HOME_DIR, XDG_DIRS};
use crate::{
execution_context::ExecutionContext,
utils::{which, PathExt},
utils::{PathExt, which},
};
use crate::{HOME_DIR, XDG_DIRS};
use rust_i18n::t;
#[cfg(unix)]

View File

@@ -1,6 +1,6 @@
use crate::HOME_DIR;
use crate::command::CommandExt;
use crate::error::{SkipStep, TopgradeError};
use crate::HOME_DIR;
use color_eyre::eyre::Result;
use etcetera::base_strategy::BaseStrategy;
@@ -8,7 +8,7 @@ use crate::executor::{Executor, ExecutorOutput};
use crate::terminal::print_separator;
use crate::{
execution_context::ExecutionContext,
utils::{require, PathExt},
utils::{PathExt, require},
};
use rust_i18n::t;
use std::path::PathBuf;

View File

@@ -6,13 +6,13 @@ use color_eyre::eyre::Result;
use tracing::debug;
use walkdir::WalkDir;
use crate::HOME_DIR;
use crate::XDG_DIRS;
use crate::command::CommandExt;
use crate::execution_context::ExecutionContext;
use crate::git::RepoStep;
use crate::terminal::print_separator;
use crate::utils::{require, PathExt};
use crate::HOME_DIR;
use crate::XDG_DIRS;
use crate::utils::{PathExt, require};
use etcetera::base_strategy::BaseStrategy;
pub fn run_zr(ctx: &ExecutionContext) -> Result<()> {
@@ -162,7 +162,7 @@ pub fn run_oh_my_zsh(ctx: &ExecutionContext) -> Result<()> {
if let Ok(output) = res_env_zsh {
let env_zsh = output.stdout;
debug!("Oh-my-zsh: under SSH, setting ZSH={}", env_zsh);
env::set_var("ZSH", env_zsh);
unsafe { env::set_var("ZSH", env_zsh) };
}
}