-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Comparing changes
Open a pull request
base repository: jdx/mise
base: 8c92adb
head repository: jdx/mise
compare: 798ca8d
- 8 commits
- 53 files changed
- 4 contributors
Commits on Apr 25, 2026
-
refactor(config): rename install_before setting (#9384)
## Summary - Rename the canonical release-age setting and per-tool option from `install_before` to `minimum_release_age`, matching pnpm's terminology. - Keep `install_before` as a hidden deprecated alias with `deprecated_at!` behavior for legacy tool options and deprecated setting metadata for global config. - Update generated schema, CLI/man output, docs, and e2e coverage to prefer `minimum_release_age` while preserving a legacy alias test. ## Validation - `mise run render` - `mise run format` - `cargo test install_before --all-features` - `cargo test config::settings::tests --all-features` - `mise run test:e2e e2e/cli/test_install_before` - commit hook: `hk` pre-commit suite, including `cargo check --all-features`, formatting, shell checks, markdown/schema validation *This PR was generated by an AI coding assistant.* <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Medium Risk** > Touches version-resolution cutoffs used by installs/`latest` across backends, so mis-wiring the new key could change which versions users resolve/install. Backward-compat aliasing reduces risk but needs careful review of precedence and deprecation paths. > > **Overview** > Renames the canonical “minimum release age” supply-chain cutoff from `install_before` to `minimum_release_age` across config, tool options, environment variables, and user-facing docs/man/usage output. > > Adds compatibility shims so legacy `install_before` still works as a *hidden, deprecated alias*: global settings are migrated to `minimum_release_age` at load time, tool options resolve via `ToolVersionOptions::minimum_release_age()` with deprecation warnings, JSON schema marks `install_before` as deprecated and introduces `minimum_release_age`, and e2e/tests are updated (including a new legacy-alias test) to validate precedence (`--before` > per-tool > global). > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 96c4618. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY -->
Configuration menu - View commit details
-
Copy full SHA for de7fedb - Browse repository at this point
Copy the full SHA de7fedbView commit details -
test(config): pin tombi schema test version (#9386)
## Summary Pins the Tombi version used by `e2e/config/test_schema_tombi` to `0.9.22`. ## Context The `e2e-linux-1` job in https://github.com/jdx/mise/actions/runs/24928843145/job/73004276209 failed because `tombi@latest` resolved to `0.9.23`, whose Linux release asset changed from `.gz` to `.tar.gz`. The bundled aqua registry entry currently expects `.gz`, so installing `latest` failed before the schema regression test could run. Pinning this test keeps it focused on validating the mise schema with Tombi and prevents unrelated upstream packaging changes from breaking CI. ## Validation - `mise run test:e2e e2e/config/test_schema_tombi` - commit hook: prettier, cargo-fmt, cargo-check, shellcheck, shfmt, pkl, taplo, lua-check, stylua, actionlint, markdownlint, schema *This PR description was generated by an AI coding assistant.* <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk: only updates the e2e schema regression test to use a fixed `tombi` version, reducing CI flakiness without changing production behavior. > > **Overview** > Pins the `e2e/config/test_schema_tombi` regression test to `[email protected]` instead of `latest`. > > Updates the `mise use` and `mise x` invocations accordingly so the test is insulated from upstream `tombi` release asset packaging changes that can break CI before the schema assertions run. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 5dde6ad. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY -->
Configuration menu - View commit details
-
Copy full SHA for 3d54615 - Browse repository at this point
Copy the full SHA 3d54615View commit details -
fix(task): label deps output by provider (#9385)
## Summary Fixes deps command output so dependency providers use a stable task-style label such as `[deps.codegen]` instead of using the raw `run` command as the progress/output prefix. This makes repeated output from commands like `pip install -r requirements.txt` less misleading because the log identifies the deps provider that is running rather than repeating the command text as the label. ## Changes - Add provider-based deps prefixes for both simple parallel deps and dependency-ordered deps. - Prefix captured stdout/stderr with `[deps.<provider>]` outside raw mode. - Keep `mise deps add/remove` direct command execution unprefixed. - Add e2e coverage for custom deps output prefixes. ## Validation - `cargo check -q` - `cargo fmt --check` - `git diff --check` - `mise run test:e2e e2e/cli/test_deps` - Commit hook: `hk` checks passed during commit, including `cargo-check`, formatters, shellcheck, schema validation, and markdownlint. Related discussion: #9377 <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Medium Risk** > Touches `DepsEngine::execute_command` and the deps execution paths to inject prefixed stdout/stderr and progress updates, which could affect logging behavior and command output handling across providers. Core dependency installation behavior is unchanged, but output/UX and raw-mode interactions may regress in edge cases. > > **Overview** > Deps provider execution output is now labeled with a stable provider-based prefix (e.g. `deps.codegen` / `[deps.codegen]`) instead of using the raw command description, improving log clarity during repeated installs. > > `DepsEngine::execute_command` was extended to optionally attach stdout/stderr line callbacks that prefix output (and update the progress message) when not in raw mode; both parallel and dependency-ordered deps runs now pass these prefixes, while `mise deps add/remove` explicitly opt out. Styling was centralized via a new `style::prefix(...)` helper, and an e2e test assertion was added to verify the new `[deps.<id>]` output. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 79e839c. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY -->
Configuration menu - View commit details
-
Copy full SHA for 2735c4d - Browse repository at this point
Copy the full SHA 2735c4dView commit details -
docs(site): show release version in nav (#9388)
## Summary - read the latest site release label from `Cargo.toml` - add a versioned releases nav item beside the existing GitHub star counter ## Validation - `npm run docs:build` in `/home/jdx/src/mise-release-version` _Note: build completed with existing VitePress warnings about missing syntax highlighters for `query`, `gitignore`, and `netrc`, plus a chunk-size warning._ _This PR was generated by Codex._ <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk documentation-site change that only affects VitePress build-time config by reading `Cargo.toml` to display a version label; main risk is a build failure if the file path or version regex stops matching. > > **Overview** > **Docs site nav now shows the current release version.** `docs/.vitepress/config.ts` reads `version` from the repo’s `Cargo.toml` at build time and adds a new nav item labeled `v${latestVersion}` that links to the GitHub releases page (falling back to `0.0.0` if parsing fails). > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit af9e31f. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY -->Configuration menu - View commit details
-
Copy full SHA for 364f7fe - Browse repository at this point
Copy the full SHA 364f7feView commit details -
docs(site): address release nav feedback (#9389)
## Summary - make the Cargo version extraction anchor to the package version line - warn during docs builds if the version cannot be found instead of silently falling back ## Validation - `npm run docs:build` in `/home/jdx/src/mise-release-version` _Note: build completed with existing VitePress warnings about missing syntax highlighters for `gitignore`, `query`, and `netrc`, plus a chunk-size warning._ _This PR was generated by Codex._ <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk docs-only change: adjusts a regex used during VitePress config generation and adds a build-time warning when the version cannot be parsed. > > **Overview** > Updates `docs/.vitepress/config.ts` to make Cargo package version extraction more robust by anchoring the regex to the `version = "..."` line within `[package]` (multiline match). > > If the version cannot be found, the docs build now emits a `console.warn` instead of silently falling back to `0.0.0`. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 5a71dfc. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY -->
Configuration menu - View commit details
-
Copy full SHA for abd701d - Browse repository at this point
Copy the full SHA abd701dView commit details -
feat(copr): add Fedora 44 & Rawhide support (#9391)
adding Fedora 44 support and fix Rawhide build script Co-authored-by: Copilot <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c6ba14b - Browse repository at this point
Copy the full SHA c6ba14bView commit details -
fix(backend): repair latest runtime labels and go resolution (#9383)
## Summary Fixes two separate `@latest` regressions that were getting conflated: - Go modules that enumerate zero versions now resolve `@latest` with `go list -m -json <module>@latest`, so modules that only have pseudo-versions still resolve to a concrete install version. - Stale real runtime-label directories like `installs/<tool>/latest/` are repaired generically by the runtime symlink migration, instead of filtering specific backends. The migration reruns with a new marker and refreshes only `install_state` after rewriting dirs, so the current process sees the repaired scan without rebuilding the backend map and breaking config aliases. - The one-time migration treats only literal `latest` as temporary generated state, with a debug-time removal guard for `2026.10.0`. Numeric partial-version dirs such as `installs/<tool>/25/` are left alone because users can request them directly with config like `foo = "25"`. Real direct-URL `latest` installs, such as UBI URL installs, are preserved when there is no concrete version target to replace them with. Rebased onto `origin/main` at `364f7fea2`. Related: - #9376 - #9381 ## Validation - `cargo fmt --check` - `cargo check --all-features` - `mise run test:e2e e2e/config/test_config_alias` - `mise run test:e2e e2e/config/test_config_plugins` - `mise run test:e2e e2e/cli/test_install_before_ignores_stale_latest_dirs` - `mise run test:e2e e2e/tools/test_runtime_symlink_migration` - `mise run test:e2e e2e/tools/test_runtime_symlink_migration_preserves_concrete_short_version` - `mise run test:e2e e2e/backend/test_ubi` - `mise run test:e2e e2e/backend/test_go_install_slow` - pre-commit `hk` hook via `git commit` *This PR was generated by an AI coding assistant.* <!-- CURSOR_SUMMARY --> --- > [!NOTE] > <sup>[Cursor Bugbot](https://cursor.com/bugbot) is generating a summary for commit f1837f1. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY -->
Configuration menu - View commit details
-
Copy full SHA for 02e6edc - Browse repository at this point
Copy the full SHA 02e6edcView commit details -
chore: release 2026.4.22 (#9387)
### 🚀 Features - **(copr)** add Fedora 44 & Rawhide support by @bestagi in [#9391](#9391) ### 🐛 Bug Fixes - **(backend)** repair latest runtime labels and go resolution by @jdx in [#9383](#9383) - **(task)** label deps output by provider by @jdx in [#9385](#9385) ### 🚜 Refactor - **(config)** rename install_before setting by @jdx in [#9384](#9384) ### 📚 Documentation - **(site)** show release version in nav by @jdx in [#9388](#9388) - **(site)** address release nav feedback by @jdx in [#9389](#9389) ### 🧪 Testing - **(config)** pin tombi schema test version by @jdx in [#9386](#9386) ## 📦 Aqua Registry Updated [aqua-registry](https://github.com/aquaproj/aqua-registry): [v4.498.0](https://github.com/aquaproj/aqua-registry/releases/tag/v4.498.0) -> [v4.499.0](https://github.com/aquaproj/aqua-registry/releases/tag/v4.499.0). Included aqua-registry releases: - [v4.499.0](https://github.com/aquaproj/aqua-registry/releases/tag/v4.499.0)
Configuration menu - View commit details
-
Copy full SHA for 798ca8d - Browse repository at this point
Copy the full SHA 798ca8dView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 8c92adb...798ca8d