jdx/mise · error
history is disabled (history.enabled = false)
Error message
history is disabled (history.enabled = false)
What it means
`mise bootstrap dotfiles sync` requires the history subsystem, which is disabled when the setting `history.enabled = false`. Sync reads and writes the checkpoint store, so it refuses to run when history is turned off.
Source
Thrown at src/cli/dotfiles/sync.rs:41
#[usage(long)]
best_effort: bool,
}
impl DotfilesSync {
pub(crate) async fn run(self) -> Result<()> {
match self.sync().await {
Ok(()) => Ok(()),
Err(err) if self.best_effort && is_network_failure(&err) => {
warn!("history sync: {err:#}");
Ok(())
}
Err(err) => Err(err),
}
}
async fn sync(&self) -> Result<()> {
if !crate::config::Settings::get().history.enabled {
bail!("history is disabled (history.enabled = false)");
}
let (store, tracked, _) = super::history::open().await?;
if let Some(reason) = store.unavailable() {
bail!("cannot synchronize: {reason}");
}
let outcome = run::sync(&store, &tracked, &SyncRequest::new(self.fetch_only))?;
crate::system::history::sync::origin::report(&outcome);
Ok(())
}
}
fn is_network_failure(error: &eyre::Report) -> bool {
error
.downcast_ref::<crate::system::history::sync::network::NetworkError>()
.is_some()
}
#[cfg(test)]View on GitHub (pinned to afd2eddd3a)
Solutions
- Enable history: `mise settings set history.enabled true`, then retry sync
- If history must stay disabled, do not use dotfiles sync (manage files manually)
Example fix
// before # settings: history.enabled = false mise bootstrap dotfiles sync // fails // after mise settings set history.enabled true mise bootstrap dotfiles sync
Defensive patterns
Strategy: validation
Validate before calling
[ "$(mise settings get history.enabled)" = "true" ] || mise settings set history.enabled true
Prevention
- Check `mise settings | grep history` before using dotfiles history commands
- Document history.enabled=true as a prerequisite in team dotfiles workflows
- Audit shared mise.toml files that disable history
When it happens
Trigger: Running the dotfiles sync command while the mise setting `history.enabled` is false in settings (global or project settings).
Common situations: User (or a shared mise.toml) disabled history to reduce overhead, then later tries to sync dotfiles.
Related errors
- history is disabled (history.enabled = false)
- history is disabled (history.enabled = false)
- history is disabled (history.enabled = false)
- Setting [{}] is not set
- {bin_name} is a mise bin however it is not currently active.
AI-assisted analysis of jdx/mise@afd2eddd3a (2026-09-09).
Data as JSON: /api/errors/8f198479afe59df6.
Report an issue: GitHub.