v2026.4.22

jdx/misev2026.4.22Apr 25, 2026by mise-en-dev

AI Summary

A patch release that fixes `@latest` regressions for Go modules, renames the `install_before` setting to `minimum_release_age`, and improves the output labeling of `mise deps`.

Key Highlights

  • Fixed `@latest` resolution for Go modules that only publish pseudo-versions and repaired stale install directories.
  • Renamed the `install_before` setting to `minimum_release_age` (deprecated alias preserved).
  • `mise deps` output is now labeled by provider (e.g. `[deps.codegen]`) instead of raw commands.
  • Fedora 44 and Rawhide are now supported in the COPR build.

Breaking Changes

  • The `install_before` setting has been renamed to `minimum_release_age`.

New Features

  • Provider-labeled output for `mise deps`
  • COPR support for Fedora 44 and Rawhide

Full Release Notes

A focused patch release that repairs two `@latest` regressions, gives `mise deps` clearer per-provider output labels, and renames the `install_before` setting to `minimum_release_age` to match the wider ecosystem.

## Highlights

- `@latest` resolution is fixed for Go modules that only publish pseudo-versions, and stale `installs/<tool>/latest/` directories are now repaired automatically.
- The `install_before` setting has been renamed to `minimum_release_age`; the old name keeps working as a deprecated alias.
- `mise deps` output is now labeled by provider (e.g. `[deps.codegen]`) instead of repeating the raw command.
- Fedora 44 and Rawhide are now supported in the COPR build.

## Fixed

- **(backend)** Two separate `@latest` issues are repaired in [#9383](https://github.com/jdx/mise/pull/9383) by @jdx:
  - Go modules that enumerate zero versions now resolve `@latest` via `go list -m -json <module>@latest`, so modules that only publish pseudo-versions still install a concrete version.
  - Stale real `installs/<tool>/latest/` directories are now repaired generically by the runtime symlink migration. The migration reruns under a new marker and refreshes only `install_state` after rewriting directories, so the current process picks up the repaired layout without rebuilding the backend map (which previously broke config aliases). Numeric partial-version dirs such as `installs/<tool>/25/` are left alone, and real direct-URL `latest` installs (e.g. UBI URL installs) are preserved when there is no concrete version to replace them with.

- **(task)** `mise deps` output is now labeled with a stable `[deps.<provider>]` prefix on stdout/stderr (and in the progress message) instead of using the raw `run` command as the prefix, making repeated output from commands like `pip install -r requirements.txt` much easier to follow. `mise deps add/remove` continues to run unprefixed. ([#9385](https://github.com/jdx/mise/pull/9385)) by @jdx

## Changed

- **(config)** The `install_before` setting and per-tool option have been renamed to `minimum_release_age`, matching pnpm's terminology. The old `install_before` name is preserved as a hidden, deprecated alias — global settings are migrated at load time, per-tool options resolve through the new key, and the JSON schema marks the old name as deprecated. Precedence is unchanged: `--before` > per-tool > global. ([#9384](https://github.com/jdx/mise/pull/9384)) by @jdx

## Added

- **(copr)** Fedora 44 and Rawhide are now supported by the COPR build script. ([#9391](https://github.com/jdx/mise/pull/9391)) by @bestagi

## Documentation

- The docs site nav now displays the current release version (read from `Cargo.toml` at build time), linking to the GitHub releases page. The build emits a warning if the version cannot be parsed instead of silently falling back. ([#9388](https://github.com/jdx/mise/pull/9388), [#9389](https://github.com/jdx/mise/pull/9389)) by @jdx

## Aqua Registry

Updated [aqua-registry](https://github.com/aquaproj/aqua-registry) from [v4.498.0](https://github.com/aquaproj/aqua-registry/releases/tag/v4.498.0) to [v4.499.0](https://github.com/aquaproj/aqua-registry/releases/tag/v4.499.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).

**Full Changelog**: https://github.com/jdx/mise/compare/v2026.4.21...v2026.4.22