Repository navigation
chore(deps): update dependency jdx/mise to v2026.10.21 - #1036
Open
tbhb-dev-renovate[bot] wants to merge 1 commit into
Open
tbhb-dev-renovate[bot] wants to merge 1 commit into
tbhb-dev-renovate[bot] wants to merge 1 commit into
Conversation
tbhb-dev-renovate
Bot
force-pushed
the
renovate/jdx-mise-2026.x
branch
from
November 1, 2026 13:15
a3abe9e to
862c433
Compare
Signed-off-by: tbhb-dev-renovate[bot] <289255489+tbhb-dev-renovate[bot]@users.noreply.github.com>
tbhb-dev-renovate
Bot
force-pushed
the
renovate/jdx-mise-2026.x
branch
from
November 1, 2026 18:54
862c433 to
e5c19fe
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.10.19→2026.10.21v2026.10.25(+3)Release Notes
jdx/mise (jdx/mise)
v2026.10.21: : Easier dotfiles setup from a checkout or Stow packages, plusprune --forcefor casksCompare Source
You can now keep mise's global config inside your dotfiles checkout, and deploy Stow-style packages without writing a table for each one. Dotfiles also get new protections for template entries, and
mise bootstrap packages prunecan force-remove casks it cannot prove are unchanged. The rest of the release fixes bugs in monorepos, lockfiles and pypi locking.Added
Bootstrap from a dotfiles checkout with
--config-dir.mise bootstrap --fromaccepts--config-dir <path>. It links mise's config directory (~/.config/mise, or whereverXDG_CONFIG_HOME/MISE_CONFIG_DIRpoint) to that path inside the checkout, then bootstraps from it.config.toml,config.<env>.toml,conf.d/andmiserc.tomlin the repository all act as global config from the first run. After that,git -C ~/.dotfiles pull && mise bootstrapis enough, andmise use -gandmise dot addwrite into the checkout.The path must stay inside the checkout. The existing config directory must be missing, empty, or already that link; mise refuses anything else and leaves it alone.
--dry-runcreates no link. The docs now recommendmise dot track ~/.config/mise, which tracks the whole config directory rather than onlyconfig.toml. Files ending in.local.tomlstay on each machine. #15025 (@jdx, @lhs-12, @Mossop)Stow packages need no
[dotfile_groups]tables. If a name in[bootstrap] dotfile_groupshas no matching table but is a directory underdotfiles.root, mise treats it as a group with the default settings: that directory is deployed into~file by file. A table with the same name still overrides the defaults.mise dot add --group,mise dot unapply --groupand orphan reporting work for these groups too. #15025 (@jdx, @lhs-12, @Mossop)mise bootstrap packages prune --manager brew-cask --force. This removes mise-installed casks that prune skips because it cannot prove they are unchanged, such as self-updating apps, casks with install steps, and casks installed before mise recorded prune metadata. Without--force, prune now lists which casks--forcewould remove. A forced prune removes only what the receipt recorded and only while it is still where mise put it. It still skips casks Homebrew owns, casks without a mise receipt, interrupted installs and shared targets. Use--dry-runto preview. #14985 (@jacobbednarz)mise dot applywarns before overwriting an edited template target. If you edited a renderedtemplatetarget by hand since mise last wrote it,applynow warns that the edit will be overwritten and names the source to move it into.applystill overwrites the file, so unattended runs are not blocked. #15020 (@jdx, @owpac)Registry:
tuios(aqua:Gaurav-Gosain/tuios). #14990 (@Gaurav-Gosain)Fixed
mise dot addon amode = "template"entry now refuses by default. Before, it copied the rendered file over the template source, which deleted the template code and could write secrets pulled in withexec()into your repository in clear text. If you really want to capture the rendered file, pass--force. #15019 (@jdx, @owpac)symlink-eachapply failed, and the suggested--forcereplaced each source file with a link to itself. Apply now replaces the folded link with a real directory of links, without needing--force. #15025 (@jdx, @lhs-12, @Mossop)mise bootstrap --adopt --dry-runnow previews the whole config directory, includingconf.d/,config.<env>.tomland this machine'smiserc.local.toml. Before, it only previewedconfig.toml. #15025 (@jdx, @lhs-12, @Mossop)monorepo.config_roots = [".", "child"], a child with no tool overrides lost the tools it inherits from the root config and fell back to global versions. This brokemise install --monorepo --locked. Each declared root now loads its full config hierarchy. #15023 (@jdx, @swizzlr)mise run //app:taskfrom the monorepo root withMISE_LOCKED=1now looks up idiomatic version files such asapp/.node-versioninapp/mise.lock, not the root lockfile. #15021 (@jdx).nvmrcis a symlink to.node-version, the.node-versionfile is read again. mise still skips.nvmrcwith a warning, but that skip no longer hides.node-version. Before, the directory resolved no Node version (regression in 2026.10.19). #15006 (@jdx, @jjb)mise locknow re-resolves platform entries whose URL points to a different release than the lockedversion. This happens, for example, after Renovate bumps the version inmise.lock. Before,mise lockleft the old URL and checksum, andmise install --lockedthen refused the lockfile. #15010 (@jdx)mise locksweep with no tool arguments no longer aborts when apypi:/pipx:tool setsuvx_argsorpipx_args. That tool gets a warning and a version-only lock entry. Naming the tool explicitly still errors. #15030 (@jdx)pypi:tools,mise locknow checks that the resolved uv dependency graph can actually be installed withuv sync --frozen --no-build. If it can't, for example because a dependency has no wheel for the interpreter, mise warns and keeps a version-only entry. Before, mise wrote a graph that the nextmise installfailed on. #15031 (@jdx)mise doctorno longer lists uninstalledlazy = truetools as problems. The toolset list marks them(lazy), and--jsonadds"lazy": true. #15024 (@jdx)packslip:installs on shared CI runners no longer fail whenraw.githubusercontent.comreturns a 429. mise now asks mise-versions whether a repository publishes a release list, and falls back to GitHub when the mirror is unavailable,use_versions_hostis off, or aurl_replacementsrule applies. #15032 (@jdx)smol-machines/smolvm) installs through aqua again. mise now rewrites the absolute symlinks in its guest root filesystem as relative links inside the install directory. Links that escape the install directory are still rejected. #15015 (@jdx)New Contributors
Full Changelog: jdx/mise@v2026.10.20...v2026.10.21
💚 Sponsor mise
mise is built and maintained by @jdx, an open source developer at entire.io, the title sponsor of his open source work.
If mise saves you or your team time, please consider becoming an individual or company sponsor. Your support funds ongoing development and helps keep mise fast, free, and independent.
v2026.10.20: : Chocolatey packages, systemd user units, and version_regex for release tagsCompare Source
Bootstrap can now install Windows packages with Chocolatey, manage systemd user units that a package already ships, and register launchd launch events. Release-based backends can filter tags with
version_regex, andmise completionsupports Nushell. The rest of the release fixes lockfile, OCI, dotfiles, shim and Windows bugs.Added
Chocolatey package manager for bootstrap. You can declare
choco:packages in[bootstrap.packages]next towingetandscoop. Chocolatey installs packages machine-wide, which covers tools like Docker Engine and the Visual Studio build tools. It only works on Windows whenchocois onPATH, andchoco:entries are skipped on other platforms.statusworks without elevation, butapplyandupgradeneed an elevated terminal. Mise treats reboot-required exit codes (1641, 3010) as success and prints a warning.state = "absent", import and prune are not supported yet. #14978 (@jdx)Manage existing systemd user units from
[bootstrap.services]. On Linux, an entry withscope = "user"and nocommandorbuiltinnow manages a unit that already exists, such as one installed by a package. Mise runssystemctl --useragainst that unit and does not write adev.mise.*unit.state,enabledandmaskedwork the same way as for system services. Options that define a service, such ascommand,environmentorrestart, are rejected for these entries. Before, this configuration was always an error. Now, if you leave outcommandby mistake, mise reports a missing unit. #14980 (@jdx)launchd launch events. macOS LaunchAgents defined in bootstrap can now set
LaunchEvents, for example to react when a USB device is added or removed. #14992 (@deecewan)Let Homebrew manage casks that mise installs. With
homebrew_metadata = trueunder[bootstrap.brew], mise writes Homebrew's cask metadata after it installs abrew-caskpackage.brew upgrade,brew outdatedandbrew doctorthen recognize the cask, and from then on mise leaves it to Homebrew. This is off by default. #14929 (@jdx, @owpac)version_regextool option forgithub,gitlabandforgejobackends. Only release tags that match the regex are listed, resolved or installed. This helps with repositories that publish releases that aren't versions of the tool. If you also setversion_prefix, a tag must start with the prefix and match the regex. An invalid pattern is reported as an error. The registry also addsblaze, which uses this option. #14984 (@jdx)Nushell completions.
mise completion nu(ornushell) now works, including--install. #14999 (@jdx, @briankchan)Templates in
settings.dotfiles.root. For example,root = "{{ mise_config_dir }}/home"now resolves to a real path. Before, the template text was used as a literal path. A relative result resolves against the config root. #14969 (@jdx, @ponko2)jactionlintin the registry now prefers thepackslipbackend, thenaqua, thengithub. #14947 (@sahidvelji)Changed
system_packages.elevate_withis now a global-only setting. This setting names the program mise runs instead ofsudo. Now only global config orMISE_SYSTEM_PACKAGES_ELEVATE_WITHcan set it. If a project'smise.tomlsets it, mise ignores the value and prints the usual warning. #14972 (@jdx)mise self-updateno longer replaces a mise that WinGet installed, because updating it in place breaks WinGet's management of the package. Instead, mise tells you to runwinget upgrade jdx.mise.--forceandMISE_SELF_UPDATE_AVAILABLE=truestill override this. #14977 (@jdx)write_targets.*, mise now warns that the value is ignored only when a write would have used it (mise use --global,mise dot add, ...). The warning names the file that mise writes to instead. The bootstrap docs also have a new section on keeping global config in a dotfiles repository. #14973 (@jdx)Fixed
mise lockcan now add tools that are missing from the lockfile whentool_config.locked = true. Before, it failed with an error telling you to runmise lock. This affected Renovate bumps, for example. #15003 (@jdx, @staticaland)mise lockno longer resolves a tool, or warns about it, for platforms that the tool'sosoption excludes. #14959 (@jdx)locks/and.mise/locks/depending on the working directory. #14961 (@jdx)mise lockor auto-locking downloads a vfox artifact, it now sends the headers from the plugin'sPreInstallhook. Before, private artifact repositories returned a 401. The headers go only to the plugin's origin and are never written tomise.lock. #15002 (@jdx, @carlosemart)mise backends switch --global <tool>. Before, the suggested command didn't work. #14976 (@jdx, @jc00ke)mise bootstrap --fromnow finds git when it was just installed outside the startupPATH, such as Homebrew in/opt/homebrew/binon a fresh Mac. #14919 (@pmmmwh)[bootstrap.compose]services that usenetwork_mode: service:X,ipc,pidorvolumes_fromno longer always reportupdate. #14958 (@jdx, @thurstonsand)Name.mise-tmp-<hash>name. #15001 (@jdx, @kyong0612)[tool_alias]are now written to the image config under their resolved backend, so they still resolve inside the container. #14971 (@jdx, @artemklevtsov)/etc/alternatives/*. #14968 (@jdx)mise dot statusnow shows the path of the local history repository, andmise dot trackexplains when it writes a tracking entry next to an existingcopy/symlink/templateentry. The docs now cover moving from a symlinked dotfiles repository to tracking. #14979 (@jdx)mise dot add --sourcepath now resolves from the current directory. #14983 (@jdx, @sahidvelji)git write-treewhen Windows refuses to write a loose object. #15000 (@jdx)__MISE_SESSIONno longer makesmise hook-envprintcannot install provided ErrorHookat every prompt. #14963 (@jdx)hook-envno longer re-checks the health of largenpm:tool trees on every prompt. The result is cached until the install changes. #14960 (@jdx)sopsshim onPATHand recurses back into itself. It skips mise shims and keeps looking for a realsopsbinary. #14801 (@shuaiyafei)versionin tool option templates now work, for example{{ version | replace(from='-x', to='') }}in anhttpURL. If an expression mixesversionwithenvorvars, the whole expression is now rendered at install time and can no longer seeenvorvars. #14967 (@jdx)#comment lines. #14964 (@jdx)mise doctorno longer warns about a tool installed with an explicit backend that the registry lists for that tool. Its project output is now colored too. #14965, #14970 (@jdx, @Tsafaras)Documentation
mise usedocs now explain that a bare tool name reuses the newest installed version. #14949 (@sahidvelji)New Contributors
Full Changelog: jdx/mise@v2026.10.19...v2026.10.20
💚 Sponsor mise
mise is built and maintained by @jdx, an open source developer at entire.io, the title sponsor of his open source work.
If mise saves you or your team time, please consider becoming an individual or company sponsor. Your support funds ongoing development and helps keep mise fast, free, and independent.
Configuration
📅 Schedule: (UTC)
🚦 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 has been generated by Mend Renovate CLI.