v2026.7.4
ekwek1/sopranov2026.7.4Jul 9, 2026by mise-en-dev
AI Summary
Bootstrap and dotfiles commands graduate to stable status. The install process now reconciles Rust components and targets, and Linux arm64 glibc compatibility is restored for release builds.
Key Highlights
- mise bootstrap and dotfiles are now stable
- Improved Rust component reconciliation
- Restored Linux arm64 glibc compatibility
New Features
- Stable bootstrap and dotfiles
- Parallel missing-version detection
- Fixed aarch64-unknown-linux-gnu cross image
Full Release Notes
This release graduates `mise bootstrap` and `mise dotfiles` out of experimental mode, teaches `mise install` to reconcile Rust components and targets, and restores Linux arm64 glibc compatibility for release builds. ## Added - **Bootstrap and dotfiles are now stable.** `mise bootstrap` and all of its subcommands (packages, repos, macOS/Linux user services, shell activation, login shell) plus `mise dotfiles` no longer require experimental mode, so they work with `MISE_EXPERIMENTAL=0`. The related `mise doctor` diagnostics (system packages, macOS defaults, login-shell drift) and the missing `[bootstrap.packages]` hint on `mise install` are always on as well ([#10869](https://github.com/jdx/mise/pull/10869) by @jdx). - **Skip re-installs in the `mise.run` install script.** Setting `MISE_INSTALL_SKIP_IF_EXISTS` avoids re-downloading mise when the requested version is already present at the install path, which is handy for CI/Docker builds that re-run the installer on every build ([#10882](https://github.com/jdx/mise/pull/10882) by @JamBalaya56562): ```sh curl https://mise.run | MISE_INSTALL_SKIP_IF_EXISTS=1 sh ``` Only the resolved install path is checked (not the wider `PATH`), and default behavior is unchanged unless you opt in. ## Fixed - **install:** the Rust backend now asks rustup whether the configured `components` and `targets` are actually installed before skipping an install, so `mise install` reconciles missing components/targets on an already-installed toolchain instead of treating a bare symlink as complete. Array-form config is now parsed (with trimming and empty-entry filtering) and host-suffixed component names are matched ([#10876](https://github.com/jdx/mise/pull/10876) by @jdx). - **task:** `task_source_files()` is once again available when a task defines `usage` args and its run script is re-rendered with parsed CLI values ([#10870](https://github.com/jdx/mise/pull/10870) by @jdx). - **upgrade:** `mise upgrade --minimum-release-age` no longer prints a misleading "newer release ignored" warning when the installed version already satisfies the hidden latest release ([#10877](https://github.com/jdx/mise/pull/10877) by @jdx). - **build:** pinned the `aarch64-unknown-linux-gnu` cross image back to a fixed tag and added a shared glibc-floor check to release packaging, restoring predictable glibc compatibility for Linux arm64 tarballs ([#10875](https://github.com/jdx/mise/pull/10875) by @jdx). ## Performance - **install:** missing-version detection now runs each backend's install-satisfaction check in parallel, speeding up detection for larger tool sets (a follow-up to the Rust reconciliation work). If the parallel batch fails it falls back to a sequential pass so the missing list stays accurate ([#10881](https://github.com/jdx/mise/pull/10881) by @jdx). ## Changed - **registry:** the Scala shorthand now resolves to the canonical `vfox:mise-plugins/vfox-scala` fork; the `asdf:mise-plugins/mise-scala` fallback is unchanged ([#10864](https://github.com/jdx/mise/pull/10864) by @jdx). ## Documentation - Fixed the broken bootstrap docs intro, linked the bootstrap sub-pages, and made a style/consistency pass across the bootstrap pages ([#10878](https://github.com/jdx/mise/pull/10878), [#10880](https://github.com/jdx/mise/pull/10880) by @jdx). - Fixed broken source-code links in the generated CLI reference ([#10879](https://github.com/jdx/mise/pull/10879) by @jdx). ### Aqua Registry Updates New packages: [`sderosiaux/launchdeck`](https://github.com/sderosiaux/launchdeck), [`syntax-sh/lexicon-releases`](https://github.com/syntax-sh/lexicon-releases). **Full Changelog**: https://github.com/jdx/mise/compare/v2026.7.3...v2026.7.4 ## 💚 Sponsor mise mise is maintained by [@jdx](https://github.com/jdx), an open source developer for [**entire.io**](https://entire.io), the title sponsor of the [jdx.dev](https://jdx.dev) open source tools. Development is funded by sponsors. If mise saves you or your team time, please consider sponsoring at [jdx.dev](https://jdx.dev/sponsors.html). Individual and company sponsorships keep mise fast, free, and independent.