mise v2026.8.16

v2026.8.16

v2026.8.16: Command wrappers and Windows shell fixes

Added 1
  • New [wrappers] config lets you intercept an ordinary command name with a different command, arguments, and environment
Changed 2
  • acli, mimirtool, and specstory are no longer restricted to Linux and macOS and can now be installed and run on Windows
  • llama.cpp resolution now includes prereleases since upstream began flagging its rolling bNNNN builds as GitHub prereleases
Fixed 7
  • mise env and mise activate --shims now emit valid Elvish quoting instead of bash's, fixing stray quotes, wrong PATH separator, apostrophes, exclamation marks with backslashes, and newline sequences in paths
  • mise env -s fish now splits PATH on the host's separator and recognizes the Path spelling on Windows, so semicolon-separated Windows paths are no longer severed at each drive letter
  • The "No URL for platform" error now lists every platform key a tool actually declares in mise.toml instead of falling back to a misleading "requires 'url' option" message
  • When tools are current for their configured version ranges but newer releases exist beyond those ranges, mise upgrade now lists the affected tools with their current and available versions instead of printing "All tools are up to date"
  • Double-dash task arguments are now preserved with double_dash="preserve" instead of being consumed by the outer CLI parser
  • Embedded Aube npm installs are now isolated as a standalone one-package workspace so a pnpm-workspace.yaml above MISE_DATA_DIR can no longer redirect the install into the outer workspace
  • Repository status checks now honor the global --jobs limit so mise bootstrap status, apply, and update run these read-only git checks with bounded concurrency

From mise

This release adds configurable command wrappers for intercepting ordinary commands, alongside a batch of shell and PATH fixes that make Windows activation more reliable and clearer upgrade and error messaging.

Added
  • shims: New [wrappers] config lets you intercept an ordinary command name with a different command, arguments, and environment. Wrappers take precedence over mise-managed tools, and mise strips its dispatch directories before delegating so the underlying tool still resolves from mise or the system. Works with normal activation, activate --shims, and mise exec; managed wrapper shims are refreshed by mise reshim. (#12617 by @jdx)

    [tools]
    mr-boxington = "1.1.0"
    
    [wrappers.cargo]
    command = "mbx"
    env = { MBX_CARGO_SHIM_MODE = "1" }
    
Fixed
  • elvish: mise env and mise activate --shims now emit valid Elvish quoting instead of bash's. This fixes several corruptions that mostly surfaced on Windows: stray quotes and the wrong PATH separator in activate --shims, apostrophes and ! arriving with backslashes, and \n sequences in paths like C:\nodejs being turned into newlines. (#12584 by @JamBalaya56562)

  • fish: mise env -s fish now splits PATH on the host's separator and recognizes the Path spelling on Windows, so semicolon-separated Windows paths are no longer severed at each drive letter. Empty PATH segments are dropped rather than adding the current directory. (#12582 by @JamBalaya56562)

  • http: The "No URL for platform" error now lists every platform key a tool actually declares in mise.toml, including typos and unrecognized names, instead of falling back to a misleading "requires 'url' option" message with an empty available list. (#12580 by @JamBalaya56562)

  • upgrade: When tools are current for their configured version ranges but newer releases exist beyond those ranges, mise upgrade no longer prints "All tools are up to date". It now lists the affected tools with their current and available versions plus the config source, and points to mise upgrade --bump. (#12613 by @jdx)

    Newer versions are available but do not match the configured version ranges:
      node 26.7.0 → 26.8.1 (~/.config/mise/config.toml)
    Run `mise upgrade --bump` to update the configuration and upgrade.
    
  • task: Double-dash task arguments are now preserved with double_dash="preserve". The first -- separator was previously consumed by the outer CLI parser and lost before reaching the task. (#12628 by @jdx)

  • npm: Embedded Aube npm installs are now isolated as a standalone one-package workspace, so a pnpm-workspace.yaml above MISE_DATA_DIR can no longer redirect the install into the outer workspace or mutate it. This mainly affects GitLab CI layouts where the data dir lives under CI_PROJECT_DIR. (#12630 by @jdx)

  • bootstrap: Repository status checks now honor the global --jobs limit, so mise bootstrap status, apply, and update run these read-only git checks with bounded concurrency. (#12629 by @jdx)

Changed
  • registry: acli, mimirtool, and specstory are no longer restricted to Linux and macOS and can now be installed and run on Windows. (#12627 by @JamBalaya56562)
  • registry: llama.cpp resolution now includes prereleases, since upstream began flagging its rolling bNNNN builds as GitHub prereleases. The existing minimum-release-age and b version prefix behavior is unchanged. (#12614 by @jdx)

Full Changelog: https://github.com/jdx/mise/compare/v2026.8.15...v2026.8.16

💚 Sponsor mise

mise is maintained by @jdx, an open source developer for entire.io, the title sponsor of the jdx.dev open source tools. Development is funded by sponsors.

If mise saves you or your team time, please consider sponsoring at jdx.dev. Individual and company sponsorships keep mise fast, free, and independent.

View original

Upgraded? How did it go?

Discussion