jdx/mise · error
self_update.api_url must use HTTPS, got {:?}
Error message
self_update.api_url must use HTTPS, got {:?} What it means
Settings validation in SelfUpdate validate(): the configured self_update.api_url does not use HTTPS, so the self-updater refuses to contact it (plain HTTP would allow tampered downloads). Fires when api_url is set to an http:// endpoint.
Source
Thrown at src/cli/version.rs:83
#[cfg(feature = "self_update")]
pub(crate) fn repository_parts(&self) -> Result<(&str, &str)> {
let (owner, repo) = self.repository.split_once('/').ok_or_else(|| {
eyre::eyre!(
"self_update.repository must be in owner/repository format, got {:?}",
self.repository
)
})?;
eyre::ensure!(
!owner.is_empty() && !repo.is_empty() && !repo.contains('/'),
"self_update.repository must be in owner/repository format, got {:?}",
self.repository
);
Ok((owner, repo))
}
pub(crate) fn validate(&self) -> Result<()> {
let api_url = url::Url::parse(&self.api_url)?;
eyre::ensure!(
api_url.scheme() == "https",
"self_update.api_url must use HTTPS, got {:?}",
self.api_url
);
Ok(())
}
}
/// Display the version of mise
///
/// Displays the version, os, architecture, and the date of the build.
///
/// If the version is out of date, it will display a warning.
#[derive(Debug, usage_rs::Args)]
#[usage(
verbatim_doc_comment,
visible_alias = "v",
example(View on GitHub (pinned to afd2eddd3a)
Solutions
- Change self_update.api_url to an https:// URL
- Remove the override to use the default GitHub API endpoint
- Retry self-update once the URL is HTTPS
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at src/cli/version.rs:83 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of jdx/mise@afd2eddd3a (2026-09-09).
Data as JSON: /api/errors/9e02fc42647212e9.
Report an issue: GitHub.