v2026.7.1
ekwek1/sopranov2026.7.1Jul 7, 2026by mise-en-dev
AI Summary
This release upgrades to the Tera v2 template engine and introduces safer pruning logic to prevent deletion of tracked tool versions. It also adds experimental features for cargo and macOS launchd.
Key Highlights
- Upgraded to Tera v2 template engine
- Experimental cargo native binary fast path
- macOS launchd calendar interval support
- Safer pruning (stubs now tracked)
New Features
- Tera v2 template engine upgrade
- Cargo native binary fast path
- macOS launchd calendar interval support
Full Release Notes
## Added - **config:** temporary `tera_v1` / `MISE_TERA_V1` escape hatch to keep rendering templates with the old Tera v1 engine after the upgrade to Tera v2 (scheduled for removal in 2027.4.0) [#10817](https://github.com/jdx/mise/pull/10817) - **cargo:** experimental `cargo.binstall_native` fast path that installs prebuilt native binaries from crate `package.metadata.binstall` when `cargo-binstall` is unavailable, falling back to `cargo install` on misses [#10789](https://github.com/jdx/mise/pull/10789) - **bootstrap:** `start_calendar_interval` support for macOS launchd agents, allowing calendar-based schedules (hour/minute/day/weekday/month) in addition to `start_interval` [#10797](https://github.com/jdx/mise/pull/10797) - **npm:** `trust_policy_excludes` install option for aube installs to exempt reviewed packages from trust-policy downgrade checks without disabling the policy globally [#10783](https://github.com/jdx/mise/pull/10783) ## Fixed - **config:** upgraded to the Tera v2 template engine, with v1 compatibility filters restored, delayed v1 compat warnings, and the `tera_v1` escape hatch for templates that still need the old behavior [#10756](https://github.com/jdx/mise/pull/10756) [#10814](https://github.com/jdx/mise/pull/10814) [#10815](https://github.com/jdx/mise/pull/10815) [#10817](https://github.com/jdx/mise/pull/10817) - **env:** redaction wildcards are now matched as globs, fixing over-redaction where patterns like `*_KEY` scrubbed unrelated values from task output [#10729](https://github.com/jdx/mise/pull/10729) - **env:** resolve sops keys from the ordered env [#10786](https://github.com/jdx/mise/pull/10786) - **env:** resolve `sub-*:latest` requests offline during shell activation so already-installed versions are no longer reported as missing [#10802](https://github.com/jdx/mise/pull/10802) - **prune:** don't delete tool versions referenced by executed tool stubs; stubs are now tracked so `mise prune` and `mise upgrade` retain the versions they need [#10790](https://github.com/jdx/mise/pull/10790) - **cli:** `--run-windows` is now honored by `task add` and emitted as `run_windows` in the generated TOML [#10769](https://github.com/jdx/mise/pull/10769) - **search:** `mise search` now falls back to the built-in aqua registry when the mise registry has no match (e.g. `mise search 7zip` surfaces `aqua:ip7z/7zip`) [#10801](https://github.com/jdx/mise/pull/10801) - **cargo:** accept array syntax for `features` and warn on invalid feature array entries [#10810](https://github.com/jdx/mise/pull/10810) [#10813](https://github.com/jdx/mise/pull/10813) - **backend:** accept native option shapes and arrays for list options [#10811](https://github.com/jdx/mise/pull/10811) [#10812](https://github.com/jdx/mise/pull/10812) - **install:** normalize standalone binary ownership and avoid preserving archive owner on extraction [#10808](https://github.com/jdx/mise/pull/10808) [#10819](https://github.com/jdx/mise/pull/10819) - **system:** extract suffixless brew cask zip archives [#10800](https://github.com/jdx/mise/pull/10800) - **brew-cask:** expand font target paths to handle `$HOME` and return relative paths [#10788](https://github.com/jdx/mise/pull/10788) - **github:** handle raw exe rename [#10798](https://github.com/jdx/mise/pull/10798) - **git:** sanitize repository env vars [#10776](https://github.com/jdx/mise/pull/10776) - **lockfile:** preserve header url while restoring asset host, and avoid provenance guesses for opaque tags [#10728](https://github.com/jdx/mise/pull/10728) [#10722](https://github.com/jdx/mise/pull/10722) - **oci:** normalize apt/dpkg transient state for reproducible package layers [#10731](https://github.com/jdx/mise/pull/10731) - **core:** don't panic when stderr is unwritable [#10773](https://github.com/jdx/mise/pull/10773) - **core:** improve precompiled setting errors and clarify python precompiled triple errors [#10791](https://github.com/jdx/mise/pull/10791) [#10793](https://github.com/jdx/mise/pull/10793) - **logger:** fix race between log redaction and config reset [#10785](https://github.com/jdx/mise/pull/10785) - **nushell:** resolve `str upcase` deprecation warning [#10778](https://github.com/jdx/mise/pull/10778) - **task:** show usage subcommand help [#10799](https://github.com/jdx/mise/pull/10799) - **schema:** support vars directives and allow tool alias versions [#10774](https://github.com/jdx/mise/pull/10774) [#10712](https://github.com/jdx/mise/pull/10712) - **vfox/http:** create parent directories in download helpers [#10767](https://github.com/jdx/mise/pull/10767) - restore `$LASTEXITCODE` after `_mise_hook` [#10718](https://github.com/jdx/mise/pull/10718) ## Documentation - clarify `env_shell_expand` setting [#10787](https://github.com/jdx/mise/pull/10787) - clarify Go backend version pinning [#10749](https://github.com/jdx/mise/pull/10749) - fix config precedence visual [#10779](https://github.com/jdx/mise/pull/10779) - update Tera documentation links [#10751](https://github.com/jdx/mise/pull/10751) ## Registry - prefer aqua for `pi` [#10727](https://github.com/jdx/mise/pull/10727) - add `twg` [#10780](https://github.com/jdx/mise/pull/10780), `apm` [#10766](https://github.com/jdx/mise/pull/10766), `nono` [#10675](https://github.com/jdx/mise/pull/10675), `miniserve` [#10760](https://github.com/jdx/mise/pull/10760) ## 💚 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.