deps: update dependency jdx/mise to v2026.3.0#1345
Open
renovate[bot] wants to merge 1 commit intomainfrom
Open
deps: update dependency jdx/mise to v2026.3.0#1345renovate[bot] wants to merge 1 commit intomainfrom
renovate[bot] wants to merge 1 commit intomainfrom
Conversation
6dffcd9 to
21fd672
Compare
21fd672 to
a491ae8
Compare
b0caa14 to
0f38c9a
Compare
0f38c9a to
5e4bcdb
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
2026.2.21→2026.3.0Release Notes
jdx/mise (jdx/mise)
v2026.3.0: : Smarter prepare, task-backed hooks, and per-task varsCompare Source
This release brings a major upgrade to
mise preparewith content-hash freshness, dependency ordering, and better diagnostics. Hooks and watch files can now delegate to full mise tasks, and taskvarsgain monorepo inheritance and per-task overrides. Several lockfile and idiomatic version file parsing bugs are also fixed.Highlights
mise prepareoverhaul -- Freshness detection switches from mtime to blake3 content hashing (reliable across CI and clock skew), providers can declare dependencies on each other, a new--explainflag shows detailed diagnostics, and per-provider timeouts are now supported.watch_filescan now reference mise tasks instead of inline scripts, gaining access to the full task system (deps, env, templating).varsthat override config-level vars, and monorepo subdirectory vars are now properly inherited when running tasks from the root.Added
Task references in hooks and watch_files -- Hooks can now use
{ task = "name" }syntax to run a mise task instead of an inline script. Mixed arrays of scripts and task references are supported. Task refs respectMISE_NO_HOOKS=1and the full task system (deps, env, etc.). #8400 by @jdxPer-task vars and monorepo vars inheritance -- Tasks can now define task-local
varsthat override config-level vars for that task. Monorepo subdirectory vars are also properly inherited when running tasks from the project root, matching howenvalready works. #8248 by @halmsBuilt-in
git-submoduleprepare provider -- A new built-in provider detects.gitmodulesand runsgit submodule update --init --recursivewhen submodule directories are stale. No configuration needed -- it activates automatically when.gitmodulesexists. #8407 by @jdxBlake3 content-hash freshness for prepare --
mise preparenow uses blake3 content hashing instead of mtime comparison to determine whether providers need to run. Hashes are persisted to.mise/prepare-state.toml. This is more reliable across CI, VCS operations, and clock skew scenarios. #8404 by @jdxHuman-readable stale reasons in prepare output -- Dry-run and status bar messages now explain why a provider would run, e.g.
[dry-run] Would prepare: npm (node_modules does not exist)orprepare: codegen (schema.graphql changed) -- run 'mise prep'. #8408 by @jdxmise prepare --explain <provider>diagnostics -- A new--explainflag shows detailed information about a specific provider: sources, outputs, auto status, command, and a fresh/stale verdict with reasons. Exits 0 if fresh, 1 if stale, useful for scripting. #8409 by @jdxPer-provider timeout support for prepare -- Providers can now set a
timeoutin seconds. If the command exceeds the timeout it is killed. #8405 by @jdxDependency ordering for prepare providers -- Providers can declare
depends = ["other-provider"]to enforce execution ordering. Independent providers still run in parallel. Cycle detection, failure propagation, and unknown-dep warnings are all handled. #8401 by @jdxFixed
Idiomatic version files now ignore comments -- Files like
.python-version,.node-version,.ruby-version, and.java-versionnow correctly strip#comments (both full-line and inline) and blank lines, preventing mise from treating comment text as version specifiers. #7682 by @iloveitalyGeneric parser used for idiomatic files -- Built-in idiomatic file parsers (e.g. for
package.jsonand raw text files) are now used consistently, preventing unexpected behavior when plugins like vfox don't support certain file formats. #8171 by @risu729Aqua bin_paths disk cache restored with proper invalidation -- The aqua
bin_paths.msgpack.zcache removed in v2026.2.24 has been restored withfresh_fileinvalidation keyed on the install directory. This recovers the 7-11% performance regression onmise envandmise hook-envwhile keeping cache correctness. #8398 by @jdxLockfile no longer splits entries for precompiled settings --
mise lockwithprecompiled_flavoror similar settings configured no longer produces duplicate tool entries by splitting the host platform into a separate entry. #8396 by @jdxPython lockfile respects precompiled settings --
mise locknow correctly usesprecompiled_arch,precompiled_os, andprecompiled_flavorsettings when generating Python lock file entries, andprecompiled_flavoris properly honored during installs. #8399 by @jdx"v" prefix normalized in lockfile version matching --
--lockedmode no longer fails whenmise.tomlspecifiesv1.2.3but the lockfile stores1.2.3(or vice versa). #8413 by @jdxVfox no longer eagerly loads metadata -- Removed vfox's
idiomatic_filenames()override that triggered plugin metadata loading for every config file check, and reordered detection logic so known patterns are checked first. Eliminates spurious[vfox] Getting metadata for yarndebug messages. #8397 by @jdxFixed infinite recursion with
uv_venv_autoand uv shims -- Whenuv_venv_auto = "create|source"is set and a mise shim foruvexists on PATH, venv creation no longer enters infinite subprocess recursion. The fix excludes the mise shims directory from theuvbinary search. #8402 by @halmsImproved git submodule parser for prepare -- The
.gitmodulesparser is now INI-section aware, only extractingpathvalues from[submodule "..."]sections and ignoring comments. Freshness check errors now default to fresh rather than stale, preventing spurious warnings. #8412 by @jdxBreaking Changes
# mise ...file task header syntax has been removed as scheduled. Only#MISE/# [MISE]///MISE/::MISEheaders are now recognized. If you have task files still using the old# miseheaders, update them to use the new syntax. #8403 by @jdxNew Contributors
Full Changelog: jdx/mise@v2026.2.24...v2026.3.0
v2026.2.24: : Hooks get Tera templates, aqua cache cleanup, and better error messagesCompare Source
A bug-fix release that enables Tera template rendering in hooks, eliminates a class of stale PATH bugs with aqua tools, improves error messages for unsupported registry tools, and removes the long-deprecated
python.venv_auto_createsetting.Fixed
Hooks now support Tera template rendering -- Hook scripts can now use Tera template variables like
{{tools.ripgrep.path}}, just like tasks. Additionally, the install progress bar is now cleared before postinstall hooks run, so hook output is no longer masked by the progress UI. Preinstall hooks correctly skiptools=trueenv directives since referenced tools may not yet be installed. #8385 by @jdxAqua tool PATH entries no longer go stale -- The aqua backend's
bin_pathsdisk cache (bin_paths.msgpack.z) has been removed entirely. This cache provided negligible performance benefit -- reading and decompressing a msgpack file is comparable to parsing the small YAML registry entry -- but was the root cause of stale PATH entries after tool installs (e.g. upgradinguvcausing its PATH entry to vanish). The previous fix in v2026.2.23 was raceable by concurrentmise hook-envcalls; removing the cache eliminates this class of bugs completely. #8383 by @jdxBetter error when a registry tool has no supported backends -- When a tool exists in the registry but all its backends are filtered out for the current platform or configuration (e.g.
imagemagickon a platform where onlycondaandasdfbackends are registered but disabled), the error now clearly explains the situation and lists the registered backends instead of suggesting the user meant the exact tool name they already typed. #8388 by @jdxRemoved
python.venv_auto_createsetting removed -- Thepython.venv_auto_createandpython_venv_auto_createsettings have been fully removed. These were deprecated in favor of the_.python.venvconfiguration. If you were relying on the legacyvirtualenvtool option to auto-create venvs, mise will now warn and print manual creation instructions instead. Migrate to the newer venv configuration: #8384 by @jdxBreaking Changes
python.venv_auto_createandpython_venv_auto_createsettings no longer exist. If you still have these in your configuration, they will be silently ignored. Use_.python.venv = { path = ".venv", create = true }in your tool configuration instead. #8384Full Changelog: jdx/mise@v2026.2.23...v2026.2.24
v2026.2.23: : Stricter lockfile enforcement and vfox backend optionsCompare Source
This release tightens lockfile behavior in
--lockedmode, fixes a stale PATH cache issue with aqua-based tools, resolves intermittent panics with remote git tasks, and adds the ability to pass custom options to vfox backend plugins.Added
Custom options for vfox backend plugins -- Options defined in
mise.tomltool entries are now passed through to vfox backend plugins in bothBackendInstallandBackendExecEnvcontexts, accessible in Lua viactx.options. This enables custom plugin use cases like controlling build parameters. #8369 by @Attempt3035Registry: porter -- Added Porter, a CNAB bundle authoring and management tool (
github:getporter/porter). #8380 by @lbergnehrRegistry: entire -- Added entire CLI (
aqua:entireio/cli). #8378 by @TyceHerrmanRegistry: topgrade -- Added topgrade (
aqua:topgrade-rs/topgrade), an all-in-one system upgrade tool. #8377 by @TyceHerrmanFixed
--lockedmode now strictly enforces the lockfile -- Previously,mise lockcould still run while--lockedwas active,mise use tool@latestcould bypass the lockfile, and tools missing from the lockfile would silently fall through to remote resolution. Nowmise lockrefuses to run in locked mode with a clear error and hint,mise use tool@latestrespects the lockfile when locked, and missing tools fail fast with an actionable message instead of resolving remotely. #8362 by @jdxAqua tool PATH entries no longer go missing after install -- The
list_bin_paths()cache could be populated with stale (empty) data before extraction finished, or by a concurrentmise hook-envcall during installation. The in-memory and on-diskbin_pathscaches are now cleared after an aqua tool install completes so paths are recomputed from the freshly installed files. Fixes an issue where upgrading tools likeuvcaused their PATH entry to vanish. #8374 by @jdxRemote git task cache no longer panics or corrupts on concurrent access -- Replaced
println!/eprintln!with non-panickingwriteln!to handle EPIPE gracefully, and added file locking with clone-to-temp-then-rename to prevent concurrent cache corruption when multiple mise processes fetch the same remote git task simultaneously. #8375 by @vmalezeNew Contributors
Full Changelog: jdx/mise@v2026.2.22...v2026.2.23
v2026.2.22: : Outdated plugins, rename_exe fixes, and smoother installsCompare Source
A small release adding a new way to check for outdated plugins, along with three bug fixes for archive installs, tool environment resolution, and cross-platform Ruby lockfiles.
Added
mise plugins ls --outdatedflag -- A new-o/--outdatedflag checks remote git refs in parallel and displays only plugins where the local SHA differs from the remote. Shows a table with plugin name, URL, ref, local SHA, and remote SHA. Prints "All plugins are up to date" when everything is current. #8360 by @jdxFixed
rename_exeworks with archives containing abin/subdirectory -- When an archive extracts to a layout likeprefix/bin/binary, therename_exeoption was silently skipped because it searched the extraction root non-recursively instead of thebin/subdirectory where the binary actually lives. Both the GitHub-style backend and the HTTP backend now auto-detect thebin/subdirectory as the search directory, matching the same logic used bydiscover_bin_paths()for PATH construction. #8358 by @jdxInstalling cargo/npm/pipx tools no longer crashes with
tools = trueenv directives -- When[env]contained entries likeNODE_VERSION = { value = "{{ tools.node.version }}", tools = true }, installing npm/cargo/pipx tools would fail with "Variable not found in context" because the referenced tools might not be installed yet. The cargo, npm, and pipx backends now skiptools = trueenv directive resolution during installation while still including tool paths in PATH. #8356 by @jdxRuby lockfile resolves correct Windows checksums -- Running
mise lockon macOS/Linux now correctly resolves RubyInstaller2 binary URLs and checksums for Windows platform entries, instead of incorrectly using the MRI source tarball checksum. The lockfile generator now fetches the correct.7zasset from theoneclick/rubyinstaller2GitHub releases for Windows targets. #8357 by @jdxChanged
github:chenrui333/terradozer(replacing the archived asdf plugin and unavailable aqua backend), and is restricted to Linux and macOS. #8365 by @chenrui333New Contributors
Full Changelog: jdx/mise@v2026.2.21...v2026.2.22
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.