jdx/mise · error · eyre::Report

{} runtime symlink repair(s) failed:\n{}

Error message

{} runtime symlink repair(s) failed:\n{}

What it means

Error "{} runtime symlink repair(s) failed:\n{}" thrown in jdx/mise.

Source

Thrown at src/runtime_symlinks.rs:52

                backend.ba().short,
                installs_dir.display()
            )
        })
    })
}

fn run_all_rebuilds<T>(
    rebuilds: impl IntoIterator<Item = T>,
    mut rebuild: impl FnMut(T) -> Result<()>,
) -> Result<()> {
    let errors = rebuilds
        .into_iter()
        .filter_map(|item| rebuild(item).err())
        .collect_vec();
    if errors.is_empty() {
        return Ok(());
    }
    Err(eyre::eyre!(
        "{} runtime symlink repair(s) failed:\n{}",
        errors.len(),
        errors.iter().map(|err| format!("{err:#}")).join("\n")
    ))
}

pub(crate) async fn migrate_real_dirs(config: &Config) -> Result<()> {
    for backend in backend::list() {
        for installs_dir in install_dirs_for(&backend) {
            migrate_real_dirs_in_dir(config, &backend, &installs_dir)?;
        }
    }
    Ok(())
}

/// All install directories to consider for a backend: the backend's primary
/// installs_path plus any shared/system dirs that contain the tool. Per-dir
/// rebuilds are no-ops when desired state already matches actual state, so

View on GitHub (pinned to 6f52dcdf99)

Solutions

  1. Inspect the listed symlink repair failures, remove conflicting files at the target paths, and re-run the command so mise can recreate the runtime symlinks.

When it happens

Trigger: Thrown at src/runtime_symlinks.rs:52 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of jdx/mise@6f52dcdf99 (2026-08-22). Data as JSON: /api/errors/6ed956ef19e43775. Report an issue: GitHub.