chore(deps): update dependency jdx/mise to v2026.8.15 - #2436
Open
renovate[bot] wants to merge 1 commit into
Open
chore(deps): update dependency jdx/mise to v2026.8.15#2436renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
requested review from
dhoard,
jaydeluca and
zeitlinger
as code owners
August 31, 2026 01:41
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:
v2026.8.11→v2026.8.15Release Notes
jdx/mise (jdx/mise)
v2026.8.15: : Dotfiles diff and capture, scoped config updates, and per-tool postinstall hooksCompare Source
This release expands the dotfiles/bootstrap workflow with previews, bulk capture, git-tracked manifests, and profile reconciliation, adds scoped config collection updates and per-tool postinstall hooks, and rounds it out with a large batch of fixes across tasks, schema validation, Windows, lockfiles, and shims.
Highlights
mise bootstrap dotfiles diff, bulkadd --changed, git-tracked directory manifests, and automatic reconciliation when a profile switches a target's source.mise config setlearns idempotent list updates (--append/--remove) and explicit--global/--systemtargeting, andmise usegains per-tool--postinstallhooks.Added
dotfiles: New
mise bootstrap dotfiles diffpreviews exactly whatapplywould change without writing anything, printing unified content patches for copy, template, and inline entries and structural summaries for symlinks and directories. Optional target filters use the same selection semantics asapply. (#12511 by @jdx)dotfiles:
mise bootstrap dotfiles add --changedcaptures every drifted copy-mode target back into its source in one command, without naming each path. Directory copies, symlinks, templates, and inline content are skipped, and untrusted configs are blocked. (#12512 by @jdx)dotfiles: Directory
copyandsymlink-eachentries can now setmanifest = "git"to manage only paths returned bygit ls-files, so a dotfiles repo thatgitignores everything and force-adds selected paths no longer traverses (or links) ignored home-directory content. Links are removed when a file drops out of the index. (#12523 by @jdx)dotfiles:
symlink-eachapply now reconciles stale links when a profile change (for example togglingMISE_ENVbetween home and work) points a target at a different source. Only links still pointing at the previously recorded source are removed; unmanaged paths and paths desired by another active source are left alone, and dry-run previews the removals. (#12524 by @jdx)bootstrap:
mise bootstrap --from <git-url>clones a setup/dotfiles repo (into$MISE_DATA_DIR/bootstrap-repoby default, or--from-dir), then runs bootstrap from that checkout. Existing checkouts are reused when the origin matches,--updatefast-forwards them, and--dry-runonly prints the plannedgit clone/git pull. (#12525 by @jdx)use:
mise use --postinstall <COMMAND>attaches a per-tool post-install hook that runs only when that tool is installed or reinstalled. Repeat the flag before each tool to give each its own hook. (#12609 by @jdx)mise use --postinstall "mbx setup --defaults" mr-boxingtonconfig:
mise config setgains--appendand--removefor list-like keys (append without duplicates, remove matching entries, promote scalars to arrays as needed) while preserving TOML comments and formatting, plus explicit--global/--systemtargeting forconfig get/set. Tool postinstall hooks now also receiveMISE_CONFIG_FILE,MISE_GLOBAL_CONFIG_FILE,MISE_CONFIG_ROOT, andMISE_PROJECT_ROOT. (#12603 by @jdx)config: Templates can now reference
config_source, the absolute path of the config file the template lives in (not resolved through symlinks). This lets a shared config symlinked intoconf.dadd its own real directory toPATH, for example{{ config_source | canonicalize | dirname }}/bin. Available inmise.toml,.tool-versions,[env]directives, and[settings.age]. (#12454 by @Marukome0743)task:
task_source_files(only_changed=true)returns only the sources written since the task last succeeded, so linters and formatters can run against just what changed. A failed run keeps its files outstanding until the task passes. (#12470 by @Marukome0743)outdated:
mise outdated --jsonnow includes arelease_urlfield pointing at the release page for the offered version (from the versions host, aqua, GitHub/GitLab, or the rust core plugin). The key is omitted rather than null when no page is available. (#12494 by @Marukome0743)Changed
mise upgradeno longer deletes the replaced install immediately. Whenupgrade.auto_pruneis on, the old version stays on disk and is scheduled for removal afterupgrade.prune_after(default 24h), cleaned up opportunistically on later runs.--prunestill removes immediately and--no-prunekeeps the old tree with no scheduled cleanup.mise lssurfaces deferred removals. (#12593 by @jdx)Fixed
.envfiles written as UTF-16 (the default from Windows PowerShell 5.1's>andOut-File) are now decoded and loaded instead of being silently dropped, and a UTF-16 task file now gets a clear hint to save it as UTF-8. (#12507 by @JamBalaya56562)mise install --dry-runno longer claims it would install a tool that cannot actually be installed on this platform. (#12568 by @JamBalaya56562)mise execnow reports clearly when a requested tool is not available on the current platform. (#12547 by @JamBalaya56562)tool_aliasvalue is now resolved through the registry. (#12506 by @Marukome0743)latest, and links belonging to other backends are ignored. (#12583, #12605 by @Marukome0743, @jdx)taskkilloutput is suppressed on Windows. (#12450, #12466, #12482, #12510, #12563 by @Marukome0743, @jrandolf, @JamBalaya56562, @sortA0329)file-mode shims and Windows launchers, andmise generateexplains when a--mise-binpath has no Windows launcher. Non-executable system fallbacks are skipped. (#12502, #12463, #12496, #12545 by @JamBalaya56562, @jdx)$Error. (#12483 by @JamBalaya56562)Performance
MISE_JOBS), while pouring, source builds, and prefix linking stay in dependency order. (#12604 by @jdx)Registry
New tools: pkgx, onefetch, syncthing, ols, spin-framework, cursor-agent, 7zip, mosh, pastel, broot, exiftool, spotify-player, yt-dlp-nightly, and cliamp. magika and sbt now install from their GitHub releases, and pre-commit uses the pipx backend on Windows. Various dependency and OS-limit cleanups were also applied. (#12272, #12437, #12448, #12484, #12485, #12478, #12486, #12532, #12535, #12533, #12538, #12539, #12542, #12581, #12553, #12567, #12549)
New Contributors
Full Changelog: jdx/mise@v2026.8.14...v2026.8.15
💚 Sponsor mise
mise is maintained by @jdx, an open source developer for entire.io, the title sponsor of the jdx.dev open source tools. Development is funded by sponsors.
If mise saves you or your team time, please consider sponsoring at jdx.dev. Individual and company sponsorships keep mise fast, free, and independent.
v2026.8.14: : npm/aube install fixes and cleaner temp/prune handlingCompare Source
This is a small release focused on bug fixes for npm (aube-backed) installs, HTTP cache cleanup, and Windows config pruning.
Fixed
.npmrcinto the per-tool install directory. Install-scoped settings such asminimumReleaseAge,trustPolicyExclude,allowedUnpopularPackages, and (for CLI installs)globalDir/globalBinDirnow go into.config/aube/config.tomlas typed TOML, whileallowBuildsstays inpackage.json. Inline-tabletrust_policy_excludes/allow_low_downloadsinmise.tomlstill round-trip correctly. (#12425 by @jdx)__node-gyp-bootstraptrampoline that embedded aube's lazynode-gypshim re-execs. Previously naked-run rewriting turned it intomise run __node-gyp-bootstrap …and failed with "no tasks defined", breakingallow_buildsinstalls whose lifecycle scripts callnode-gyp(for example gemini-cli via node-pty). (#12429 by @jdx)http-tarballs. All failure paths now clean up the temp directory. (#12420 by @Marukome0743)mise prune --configson Windows now removes trusted config links whose target no longer exists. Because Windows stores these links as plain files holding the target path, the previous existence check never fired; the link's target is now resolved before deciding whether to prune. (#12418 by @JamBalaya56562)Full Changelog: jdx/mise@v2026.8.13...v2026.8.14
💚 Sponsor mise
mise is maintained by @jdx, an open source developer for entire.io, the title sponsor of the jdx.dev open source tools. Development is funded by sponsors.
If mise saves you or your team time, please consider sponsoring at jdx.dev. Individual and company sponsorships keep mise fast, free, and independent.
v2026.8.13: : Task exclusions, visible conf.d fragments, and a broad round of fixesCompare Source
This release adds a few configuration and task features and delivers a large batch of fixes across completions, tools, lockfiles, tasks, config parsing, and shell integration. It also restores dynamic shell completions that regressed after the recent CLI parser change.
Added
task: New
task_config.excludeslets file-task discovery skip config-root-relative paths, directories, and glob patterns, so accidental TOML files (like apyproject.tomlinside a task directory) or entire subtrees are no longer treated as tasks. The closest config that setsexcludesreplaces inherited values, and an empty list clears the cascade. Relativetask.disable_pathsnow resolve from the declaring config file. (#12366 by @jdx)config: Project configuration can now be split into visible
mise/conf.d/*.tomlfragments, mirroring the existing.mise/conf.dand.config/mise/conf.dsupport but without a hidden dot-directory. Fragments merge alphabetically,mise/config.tomlstill wins over fragments, and environment-specific and.localvariants (for examplemise/conf.d/tools.development.toml) follow the usual env config rules. (#12395 by @jdx)bootstrap: Added
--skip-dirtytomise bootstrap,mise bootstrap repos apply, andmise bootstrap repos updateto warn and skip repos with local changes so the remaining repos still update. Origin mismatches and non-git targets still fail closed as before. (#12364 by @jdx)Fixed
run=completers work again in fish and zsh, while native file/path completion still falls back correctly. (#12376, #12379 by @jdx)VAR=override mise run ...) are no longer wiped when reconstructing the pre-mise environment in an activated shell; mise-managed values are only rolled back when the live value still matches what mise recorded. (#12390 by @jdx)latestrequest failed for a tool installed only withmise install --system; the effective install directory is now recovered so system/shared-only installs satisfylatest. (#12406 by @jdx)extract_nestedly, for example a zip containing only a DMG), and bare cask.pkgdownloads are staged correctly. (#12373, #12371 by @jdx)latestrequests now resolve to the remote default branch HEAD and are treated as a rolling channel, sooutdatedandupgradedetect branch movement. An unavailable configured executable is now rejected instead of failing later. (#12407, #12416 by @jdx)#MISEheader keys that need quoting are no longer dropped, and negative template argument bounds are rejected. Sandbox errors now name which paths do not exist yet. (#12370, #12397, #12415, #12421, #12309)__MISE_SESSIONis now unset on deactivate. (#12361 by @NgoQuocViet2001)Documentation
Registry
mr-boxington,ori,hey-cli,playwright, andghui, and switchedclaude-codeto aqua on Windows. (#12384, #12388, #12387, #12385, #12386, #12399)Full Changelog: jdx/mise@v2026.8.12...v2026.8.13
💚 Sponsor mise
mise is maintained by @jdx, an open source developer for entire.io, the title sponsor of the jdx.dev open source tools. Development is funded by sponsors.
If mise saves you or your team time, please consider sponsoring at jdx.dev. Individual and company sponsorships keep mise fast, free, and independent.
v2026.8.12: : Cleaner diagnostics and a raft of task, config, and tool fixesCompare Source
This release adds package uninstall support to the plugin bootstrap flow and fixes a broad set of task, config, tool, and diagnostic edge cases. Many changes turn silent failures and cryptic errors into actionable messages, so it is largely a robustness and quality-of-life release.
Added
PackageUninstallhook, somise bootstrap packages prune --manager <plugin>is no longer Homebrew-only. mise records ownership only for packages that go from missing to installed during an install, and prune removes only owned packages that are absent from the current config and trusted tracked configs. Pre-existing and manually installed packages are never claimed, dry-run never invokes the hook, and the keep-set is reloaded after confirmation so newly declared packages cannot be removed without another prompt. (#12332 by @jdx)Fixed
Out-File -Encoding utf8) could make.tool-versions,.node-version,package.jsonpackageManager, registry-scraped files likeEarthfile, and.sdkmanrcentries silently vanish or resolve to a corrupt version. Cached idiomatic parses written by an older mise are re-parsed so the fix takes effect on upgrade. (#12325 by @JamBalaya56562)mise edit(and the interactive TUI) now preserves comments — leading, trailing, and section comments are captured on parse and written back on save, instead of being stripped. (#12319 by @Marukome0743)package.jsonthat was tracked while enabled and later disabled no longer triggers a spurious "cannot update idiomatic version file" warning on read-only operations likemise ls --all-sources. The tracking entry is retained so re-enabling the tool reactivates it. (#12194 by @xqm32)cdtarget that cannot be entered (for example viaMISE_CDpointing at a missing directory, or a directory the process cannot chdir into) is now reported with the path and OS reason instead of panicking. (#12314 by @JamBalaya56562)killed by SIGINT/killed by SIGTERMrather than "no exit status". (#12323 by @Marukome0743)--file <file>) now stay string-typed during template rendering, so path filters likedirnamework on them. Switch flags still default to booleans and count flags to integers. (#12355 by @jdx)chmod +xadvice is gone from Windows messages. (#12324 by @JamBalaya56562)env_with_pathrather than rebuilding PATH from a pristine environment, restoring project_.pathdirectories and fixing discovery of sibling stubs. The stub-selected tool version is no longer shadowed by an outer task's install directories. (#12322 by @tmkx)mise watch --clear=reset --restartno longer leaves the terminal without echo after Ctrl-C. The controlling terminal (preferring/dev/tty) is now saved and restored from a drop guard, so it recovers on normal return, errors, and cancellation, including when stdin is redirected or a second terminal is in use. (#12328 by @Marukome0743)go installno longer inherits aGOROOTthat mise exported for a different Go, which causedcompile: version ... does not match go tool version ...failures when anothergowas first on PATH. An explicitly configuredinstall_envGOROOT is still honored. (#12342 by @Marukome0743)mise doctornow flags a tool whose install directory exists but is empty (for example after an interrupted download), marking it(empty)and suggestingmise install --force, instead of silently treating it as installed. (#12321 by @Marukome0743)$VARnow names the key or directive that referenced the missing variable and the config file it lives in, making it possible to find the offending line in a large[env]block. (#12316 by @Marukome0743)oc(OpenShift client) now installs from channel aliases such asoc = "stable"by resolving the unversioned artifact name within the channel directory, fixing a 404. (#12326 by @Marukome0743)Documentation
MISE_TASK_DIRfor locating sibling files, which works consistently across Linux, macOS, and Windows without renaming the task. (#12313 by @JamBalaya56562)New Contributors
Full Changelog: jdx/mise@v2026.8.11...v2026.8.12
💚 Sponsor mise
mise is maintained by @jdx, an open source developer for entire.io, the title sponsor of the jdx.dev open source tools. Development is funded by sponsors.
If mise saves you or your team time, please consider sponsoring at jdx.dev. Individual and company sponsorships keep mise fast, free, and independent.
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, 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.