v2026.6.0
jdx/misev2026.6.0Jun 3, 2026by mise-en-dev
AI Summary
Wires npm into Corepack and aligns aqua's Windows extension handling with upstream semantics.
Key Highlights
- Ensures npm is managed by Corepack when requested.
- Improved aqua Windows extension semantics (tri-state completion).
- New `mise sponsors` subcommand.
New Features
- Corepack-managed npm shim integration.
- Improved SPM lock identity (provider, api_url, artifactbundle).
- Fixed bun musl detection on Linux.
- Improved task include ordering and Git Bash `cygdrive` support.
Full Release Notes
A focused release that wires npm into Corepack when requested, brings aqua's Windows extension handling in line with upstream, and fixes task include ordering plus a Git Bash `cygdrive` regression. ## Added - **(npm)** Ensure npm itself is managed by Corepack when `node.corepack=true` and `node.npm_shim=false`, so the Corepack-managed npm shim is enabled alongside yarn/pnpm ([#10196](https://github.com/jdx/mise/pull/10196) by @roele). - **(cli)** New `mise sponsors` subcommand and a sponsor block on the docs site that lists sponsors fetched from `en.dev/sponsors.json` ([#10182](https://github.com/jdx/mise/pull/10182) by @jdx). ## Fixed - **(aqua)** Mirror aqua's Windows extension semantics end-to-end ([#10167](https://github.com/jdx/mise/pull/10167) by @risu729): - `complete_windows_ext` is now tri-state — explicit `true` completes Windows asset/URL/file source names, explicit `false` leaves them alone, and an omitted value completes by default except for `github_content`/`github_archive` packages. - Registry `windows_ext` (default `.exe`, `.sh` for `github_content`/`github_archive`) and `append_ext` are honored when rendering assets, URLs, and Windows install links. - `.exe` and `.jar` assets are treated as already complete, existing extensions like `.ps1` are preserved when `format` is omitted, and version dots in names like `tool.1.0.0` no longer suppress Windows completion. The registry compilation cache is bumped to version 2 and will be regenerated on next use. - **(spm)** Include `provider`, `api_url`, `artifactbundle`, and `artifactbundle_asset` in SPM lock identity so toggling between source builds and artifact bundles no longer silently reuses a stale `mise.lock` entry. `provider` is canonicalized to lowercase (default `github` omitted), `api_url` has trailing slashes trimmed, and `filter_bins` stays out of lock identity since it only affects which built executables are exposed ([#10160](https://github.com/jdx/mise/pull/10160) by @risu729). - **(bun)** Improve musl detection on Linux: when the system libc preference is unset, fall back to runtime detection and treat unknown results as non-musl, fixing glibc-system installs that were incorrectly resolving to bun's musl build ([#10195](https://github.com/jdx/mise/pull/10195) by @roele). - **(task)** Honor `task_config.includes` order so a local task can override a same-named `git::` include. Previously a regression in #9147 combined with non-git includes being loaded before all `git::` includes meant a `git::` include always clobbered a same-named local task regardless of position. Includes now load in their declared order with first-wins file-task dedup, so the earlier entry in the list takes precedence uniformly across directory, toml-file, and `git::` includes ([#10191](https://github.com/jdx/mise/pull/10191) by @vmaleze). - **(task)** Honor `MISE_CYGDRIVE_PREFIX` for Git Bash / MSYS2, not only Cygwin. Git Bash users with a custom `/etc/fstab` automount root can now set the prefix to fix the converted PATH; defaults are unchanged (`/c/...` for Git Bash, `/cygdrive/c/...` for Cygwin) ([#10190](https://github.com/jdx/mise/pull/10190) by @JamBalaya56562). - **(completion)** Rely on usage 3.4.0's [usage#649](https://github.com/jdx/usage/pull/649) for inherited global flags so `-C`/`--cd`, `-j`/`--jobs`, and `-q`/`--quiet` are recognized before a mounted task without the broad promotion workaround. The narrowed promotion now only covers orphan-short flags `-r`/`-S` (whose root globals are long-only), and `min_usage_version` is bumped to `3.4` so older usage CLIs warn to upgrade instead of silently regressing ([#10176](https://github.com/jdx/mise/pull/10176) by @JamBalaya56562). ## Documentation - Fix the `choice` template function example to use named-argument syntax ([#10197](https://github.com/jdx/mise/pull/10197) by @joekrill). ## New Contributors * @joekrill made their first contribution in [#10197](https://github.com/jdx/mise/pull/10197) **Full Changelog**: https://github.com/jdx/mise/compare/v2026.5.18...v2026.6.0 ## 💚 Sponsor mise mise is built by [@jdx](https://github.com/jdx) under [**en.dev**](https://en.dev) — an independent studio making developer tooling (mise, [aube](https://aube.en.dev/), and more). Development is funded by sponsors. If mise saves you or your team time, please consider sponsoring at [en.dev](https://en.dev). Individual and company sponsorships keep mise fast, free, and independent.