Update dependency jdx/mise to v2026 - abandoned#1350
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
c1e1b5e to
64fa1d6
Compare
fe0733f to
672422c
Compare
7f3d79f to
b49c7c7
Compare
098337e to
82a7b5a
Compare
bd03337 to
2118436
Compare
2118436 to
98adc4d
Compare
eb5a672 to
f3744e5
Compare
1cb991e to
5b89e4c
Compare
cbb9c56 to
92a91b3
Compare
ca59d0d to
f133d69
Compare
dd24c2d to
d47be0c
Compare
9f295fe to
047bc08
Compare
Author
Autoclosing SkippedThis PR has been flagged for autoclosing. However, it is being skipped due to the branch being already modified. Please close/delete it manually or report a bug if you think this is in error. |
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:
v2024.7.1→v2026.7.5Release Notes
jdx/mise (jdx/mise)
v2026.7.5Compare Source
v2026.7.4: : Bootstrap goes stableCompare Source
This release graduates
mise bootstrapandmise dotfilesout of experimental mode, teachesmise installto reconcile Rust components and targets, and restores Linux arm64 glibc compatibility for release builds.Added
mise bootstrapand all of its subcommands (packages, repos, macOS/Linux user services, shell activation, login shell) plusmise dotfilesno longer require experimental mode, so they work withMISE_EXPERIMENTAL=0. The relatedmise doctordiagnostics (system packages, macOS defaults, login-shell drift) and the missing[bootstrap.packages]hint onmise installare always on as well (#10869 by @jdx).mise.runinstall script. SettingMISE_INSTALL_SKIP_IF_EXISTSavoids re-downloading mise when the requested version is already present at the install path, which is handy for CI/Docker builds that re-run the installer on every build (#10882 by @JamBalaya56562):curl https://mise.run | MISE_INSTALL_SKIP_IF_EXISTS=1 shPATH), and default behavior is unchanged unless you opt in.Fixed
componentsandtargetsare actually installed before skipping an install, somise installreconciles missing components/targets on an already-installed toolchain instead of treating a bare symlink as complete. Array-form config is now parsed (with trimming and empty-entry filtering) and host-suffixed component names are matched (#10876 by @jdx).task_source_files()is once again available when a task definesusageargs and its run script is re-rendered with parsed CLI values (#10870 by @jdx).mise upgrade --minimum-release-ageno longer prints a misleading "newer release ignored" warning when the installed version already satisfies the hidden latest release (#10877 by @jdx).aarch64-unknown-linux-gnucross image back to a fixed tag and added a shared glibc-floor check to release packaging, restoring predictable glibc compatibility for Linux arm64 tarballs (#10875 by @jdx).Performance
Changed
vfox:mise-plugins/vfox-scalafork; theasdf:mise-plugins/mise-scalafallback is unchanged (#10864 by @jdx).Documentation
Aqua Registry Updates
New packages:
sderosiaux/launchdeck,syntax-sh/lexicon-releases.Full Changelog: jdx/mise@v2026.7.3...v2026.7.4
💚 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.7.3: : System dependency checks and cask lifecycle hooksCompare Source
This release brings smarter builds for source-compiling tools, better Homebrew cask support, and a fix for lockfile entries losing their platform data during upgrades.
Added
vfox: plugin-declared system dependencies. Source-compiling plugins (php, mysql, erlang, ...) often need build tools and libraries that previously showed up only as a failed
./configuretwenty minutes into a build. vfox plugins can now declare these prerequisites inmetadata.lua, and mise checks them before installing (#10848 by @jdx):Detection is the source of truth: a satisfied check passes regardless of how the capability was installed (Homebrew, apt, nix, from source), and the per-manager
packagesmap is only used to offer installing the missing subset. A newsystem_depssetting controls behavior (promptdefault,auto,warn,ignore); the check never fails an install. Missing deps also show up inmise doctorandmise bootstrap status. Declarations are inert on older mise versions and on upstream vfox.brew: cask lifecycle hooks. Homebrew cask installs now run supported
preflightandpostflighthooks via a mise-owned, sha256-verified Ruby shim (nobrewdelegation), which fixes wrapper-style casks like GIMP. Unsupported hook DSL fails with an explicit error (#10837 by @jdx).cli: terminal width override. In some CI environments width detection returns a bogus value and mise's table/list output (
mise ls,mise registry,mise settings) renders oddly with no way to fix it. You can now override the detected width (#10862 by @JamBalaya56562):MISE_TERM_WIDTHtakes precedence, withCOLUMNSas a fallback. An explicit override is honored exactly (no 80-column floor); behavior is unchanged when neither is set.Fixed
mise upgrade --bumpcan rewrite more lockfile entries than the tools it actually installs. Those rewritten entries were previously reduced to bare version/backend records, losing their cross-platform checksums and URLs. mise now re-locks stale entries that are missing platform metadata, so tools likeruff,biome, andtyposkeep their full lock data (#10752 by @zeitlinger).karabiner-elements) now install correctly, staged through the caskroom as symlinks (#10841 by @jdx).cargo publishverification failure (#10863 by @jdx).Changed
Documentation
Full Changelog: jdx/mise@v2026.7.2...v2026.7.3
💚 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.7.2: : Template and Extraction FixesCompare Source
This is a small bug-fix release focused on template compatibility, archive extraction, and a couple of tool-specific installs.
Fixed
get_envtemplate helper for Tera v2 templates, backed by mise's original process environment, so older templates keep working. Shared configs can also opt back into the temporary Tera v1 renderer with[env] MISE_TERA_V1 = true(which older mise versions safely ignore) (#10830 by @jdx):[settings](including nested keys likeaqua.registry_url), process env vars, or theMISE_TERA_V1[env]shim, now produce proper deprecation warnings. Warnings are held until the logger is ready so they honor-q,--silent, and--log-level, and no longer fire spuriously for unrelatedMISE_*values (#10832 by @jdx).GNU.sparse.*tar archives (such as thesmolvmrelease tarballs) now extract correctly by falling back to the systemtarwhen the built-in extractor can't safely unpack sparse content (#10821 by @JamBalaya56562).podmannow installs with the expectedpodmanbinary name instead ofpodman-remote-static, removing the need for manual symlink workarounds (#10822 by @konono).@biomejs/biome@2.5.2) are now accepted, so mise no longer rejects otherwise-valid download URLs and falls back to the GitHub API (#10750 by @zeitlinger).Full Changelog: jdx/mise@v2026.7.1...v2026.7.2
💚 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.7.1: : Tera v2 Templates and Safer PruningCompare Source
Added
tera_v1/MISE_TERA_V1escape hatch to keep rendering templates with the old Tera v1 engine after the upgrade to Tera v2 (scheduled for removal in 2027.4.0) #10817cargo.binstall_nativefast path that installs prebuilt native binaries from cratepackage.metadata.binstallwhencargo-binstallis unavailable, falling back tocargo installon misses #10789start_calendar_intervalsupport for macOS launchd agents, allowing calendar-based schedules (hour/minute/day/weekday/month) in addition tostart_interval#10797trust_policy_excludesinstall option for aube installs to exempt reviewed packages from trust-policy downgrade checks without disabling the policy globally #10783Fixed
tera_v1escape hatch for templates that still need the old behavior #10756 #10814 #10815 #10817*_KEYscrubbed unrelated values from task output #10729sub-*:latestrequests offline during shell activation so already-installed versions are no longer reported as missing #10802mise pruneandmise upgraderetain the versions they need #10790--run-windowsis now honored bytask addand emitted asrun_windowsin the generated TOML #10769mise searchnow falls back to the built-in aqua registry when the mise registry has no match (e.g.mise search 7zipsurfacesaqua:ip7z/7zip) #10801featuresand warn on invalid feature array entries #10810 #10813$HOMEand return relative paths #10788str upcasedeprecation warning #10778$LASTEXITCODEafter_mise_hook#10718Documentation
env_shell_expandsetting #10787Registry
pi#10727twg#10780,apm#10766,nono#10675,miniserve#10760💚 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.7.0: : Shell expansion by default, monorepo lockfiles, and task usage mountsCompare Source
Added
env_shell_expand = false(#10702 by @jdx).mise install --monorepoandmise ls --monorepoinstall/list the union of tools across[monorepo].config_roots; new tri-state[monorepo].lockfilefor unified root lockfiles (#10707 by @jdx).#USAGE mount ...in file tasks (including shorthandmount "cmd") hoists mounted usage specs onto the generated task command (#10704 by @jdx).github_attestationsoption to disable GitHub Artifact Attestation verification for a single tool (#10694 by @jdx).minimum_release_agewarnings now include the release date, when the version becomes eligible, and the effective cutoff value (#10705 by @jdx).[bootstrap.packages]closure (#10618 by @jdx).fontartifacts and additional non-install artifact types (completions/manpages) (#10671 by @roele).Fixed
--lockedinstalls (#10599 by @risu729).cargo install --locked miseon unsupported architectures (#10627 by @risu729).--yes(#10630 by @JamBalaya56562).v-prefixed version overrides (e.g.sharkdp/fd@10.3.0) (#10696 by @jdx).$APPDIRpaths, and usedittofor app bundle copying to avoid macOS "damaged app" errors (#10626 by @arthurh4).mise config setfor comma-separated set-typed settings (#10647 by @KrishRVH).task_config.includestemplates with resolvedvars(#10700 by @jdx).requiredvalidation andredact = trueon[vars]; render tool option templates recursively (#10697 by @jdx).dotnet --list-sdkssoglobal.jsonroll-forward no longer causes false failures (#10691 by @jdx).mise generate tool-stub --lockrespects configuredlockfile_platforms(#10709 by @JamBalaya56562).url_apiin older lockfile entries, falling back to the cached browser URL (#10703 by @jdx).MISE_INSTALLED_TOOLS=[]on no-op installs sopostinstallalways receives a valid JSON array (#10615 by @JamBalaya56562).shorthand_vendor), preventing checksum/URL loss (#10710 by @JamBalaya56562).allow_buildsto npm 11.16+--allow-scripts/--dangerously-allow-all-scriptsinstead of forcing--ignore-scripts(#10690 by @jdx).PATH, fixingmise ocion systems with symlinked/home(Bluefin/Silverblue) (#10624 by @salim-b).no-yjitRuby builds on older glibc (#10620 by @jdx).[env]; broken subprojects no longer fail discovery repo-wide (#10706 by @jdx).task.show_full_cmdsetting (#10714 by @muzimuzhi).os.getenvnow reads from mise's env table likecmd.exec/os.execute(#10719 by @jdx).--ignore,--ignore-file, and--print-eventsto watchexec (#10629 by @JamBalaya56562).Security
quick-xmladvisories RUSTSEC-2026-0194/-0195 pending upstream fixes (#10717 by @jdx).💚 Sponsor mise
mise is built by @jdx under en.dev — an independent studio making developer tooling (mise, aube, and more). Development is funded by sponsors.
If mise saves you or your team time, please consider sponsoring at en.dev. Individual and company sponsorships keep mise fast, free, and independent.
v2026.6.14: : Bootstrap, end-to-endCompare Source
Added
mise bootstrap --only <part>as the inverse of--skip, accepting repeated/comma-separated phase names and mutually exclusive with--skip(#10607 by @jdx).mise bootstrap packages import/prunefor Homebrew formulae, snapshotting requested installed formulae into[bootstrap.packages]and ledger-pruning only adopted formulae no longer needed by merged config (#10606 by @jdx).mise bootstrap status(aliasls) aggregates packages, dotfiles, macOS defaults, launchd, systemd, login shell, repos, shell activation, and[tools]into one report with--jsonand--missing(non-zero exit when anything is out of sync) (#10608, #10612 by @jdx).bootstrap: follow-upsummary listing deferred user actions (macOS defaults relaunches, login shell re-login, unavailable managers, OS-skipped phases) at the end ofmise bootstrap; dry runs showfollow-up if applied(#10609 by @jdx).[bootstrap.mise_shell_activate]config plusmise bootstrap shell apply/statusto install marker-delimitedmise activate/shimssnippets in bash, zsh, and fish rc files (#10610 by @jdx).[bootstrap.repos]withmise bootstrap repos apply/statusto clone/update git checkouts; runs after packages, before dotfiles, withpre-repos/post-reposhooks and safety checks for dirty trees and origin mismatches (#10611 by @jdx).mise bootstrapsubcommands so visible CLI mirrors config sections (packages apply,dotfiles,mise-shell-activate,macos defaults,macos launchd-agents,linux systemd-units,repos); legacy paths kept as hidden aliases (#10613 by @jdx).brew-caskinstaller now supportsbinarycask artifacts (e.g. 1Password CLIop), staging in the Caskroom and symlinking under the Homebrew prefix (#10604 by @jdx).riscv64(includingriscv64gc) andloongarch64, so tools likeaqua:astral-sh/uvinstall correctly on those hosts (#10506 by @elerch).Fixed
mise whichnow auto-enablesprefer_offline, so binary lookups no longer make remote HTTP calls when an installed version satisfies the request, even withminimum_release_ageconfigured (#10595 by @JamBalaya56562).settings.url_replacements, fixing aqua cosign-verified installs (e.g.cosign@3.1.1) behind a mirror; the embedded production root is still pinned so a mirror cannot forge trust (#10596 by @JamBalaya56562).~/.config/mise/conf.d/*.tomlon Fedora Atomic / ostree (/home->/var/home) is no longer flagged as non-global and stripped (#10597 by @JamBalaya56562).mise setand other TOML writes now target the nearest config directory before picking the lowest-precedence file in it, so nested projects no longer accidentally update a parentmise.toml(#10603 by @jdx).mise use --path package.json) (#10602 by @jdx).github::get_headersreturns an error rather than panicking on a relative URL, fixing an unwrap crash seen installingaqua:jdx/aube@v1.24.0(#10591 by @risu729)..mise.toml, re-enables the warning, and explicit commands still report the full error (#10589 by @jdx).mise settings setfor a brand-new dotted key no longer emits an empty[settings]header before the nested[settings.foo]table (#10605 by @jdx).mise ls --installedno longer surfaces duplicateplugin@entries (#10351 by @zeitlinger).Documentation
misesong page (#10614 by @jdx).💚 Sponsor mise
mise is built by @jdx under en.dev — an independent studio making developer tooling (mise, aube, and more). Development is funded by sponsors.
If mise saves you or your team time, please consider sponsoring at en.dev. Individual and company sponsorships keep mise fast, free, and independent.
v2026.6.13: : Lock resolution discipline and aqua attestation fixesCompare Source
Added
pkgartifacts, installing viasudo installerand trackingpkgutilreceipt IDs for status checks (#10587 by @jdx).lore(#10558 by @ggoggam) and published-checksum resolution fordart,neo4j,nomad-pack,sentinel,tfc-agent,oc,openshift-install,claude,flutter, andjulia(#10552 by @itochan).Fixed
mise locknow errors out when an active tool request cannot be resolved instead of silently skipping it and updating the lockfile (#10586 by @jdx).SHA512SUMSprovides sha512); same-algorithm mismatches still fail hard (#10569 by @jdx)..sigstorerelease asset names; it is shown only when the aqua registry config actually enables attestation verification (#10588 by @jdx).list_bin_pathsno longer caches transient filesystem existence, fixing missinguv/uvxshims after concurrentmise upgraderuns that an extramise reshimcould not repair (#10559 by @devnulled, fixes #6468).mise runandmise hook-envnow build their initial toolset with offline resolution, so task startup no longer triggers remote GitHub lookups (orgithub.credential_command) forlatest/rolling/semver-range tools (#10571 by @jdx).Retry-Aftersupport, instead of failing the install on a single 504 (#10482 by @afreyermuth98).core:swiftout of the--lockedURL requirement, since the download URL depends on the local distro and cannot be locked cross-platform (#10575 by @AllDmeat).gem:backend out of the--lockedURL requirement somise install --lockedno longer fails ongem:tools in CI (#10578 by @itochan).install = "source"and the source tarball URL/checksum for platforms without precompiled binaries, instead of writing bogus platform binary URLs (#10547 by @risu729).\\wsl.localhost\...), so linked plugins show up inmise plugins lsand can be removed (#10566 by @rozsazoltan).linknamefield via the GNU@LongLinkextension, fixingmise oci buildfor deep npm/aube install trees (#10519 by @JamBalaya56562).package_config.jsonat the pub workspace root, using.dart_tool/pub/workspace_ref.json, so Dart monorepos resolve dependencies correctly (#10521 by @tjarvstrand).💚 Sponsor mise
mise is built by @jdx under en.dev — an independent studio making developer tooling (mise, aube, and more). Development is funded by sponsors.
If mise saves you or your team time, please consider sponsoring at en.dev. Individual and company sponsorships keep mise fast, free, and independent.
v2026.6.12: : Bootstrap skip, cross-platform lock checksums, DNF5 fixCompare Source
Added
mise bootstrap --skip <part>for selective phases (packages,dotfiles,defaults,launchd,systemd,user,tools,task,final-hook); repeatable and comma-separated (#10497 by @jdx).checksum_url,checksum_expr, andchecksum_algo(#10509 by @itochan).checksum.replacements,checksum.minisign, andchecksum.github_artifact_attestations(#10473 by @risu729).aspire(#10520 by @davidfowl),ldc(#10527 by @slbls), andnub(#10544 by @colinhacks).Fixed
mise upwhenminimum_release_ageis in effect (#10466 by @roele).mise install(#10470 by @risu729).$XDG_RUNTIME_DIR/systemd/private, not only a session D-Bus, so headless systems are recognized (#10550 by @jdx).tools = trueenv path templates like{{ tools.python.path }}against the fully-resolved dependency toolset; values now reach vfox install hooks and tool-levelpostinstall(#10481 by @JamBalaya56562).mise.toml,.mise/config.toml) when walking directory task includes likeincludes = ["."](#10500 by @jdx).task.show_full_cmd/MISE_TASK_SHOW_CMD_NO_TRUNCin the[task] $ ...header (#10518 by @JamBalaya56562).$$as a literal$duringenv_shell_expand(#10511 by @jdx).minimum_release_ageflags (#10491 by @risu729).pipx upgrade-sharedbefore fallback installs that forwardminimum_release_ageto pip (#10472 by @risu729).uv tool installis below 0.2.22 for--exclude-newer(#10510 by @risu729).PIPX_DEFAULT_BACKEND=pipon mise pipx subprocesses so pip flags are not forwarded to pipx's uv backend (#10513 by @risu729).windows_executable_extensionsconsistently across uv, aube, cargo-binstall, and sops (#10514 by @risu729).--fromdnf install/upgradeargv, which DNF5 (Fedora 41+, RHEL/CentOS Stream 9+) rejects (#10538 by @spencergilbert).Documentation
~/.dotfilessymlink exists (#10494 by @jdx).Changed
usageto 3.5.2 (#10498).💚 Sponsor mise
mise is built by @jdx under en.dev — an independent studio making developer tooling (mise, aube, and more). Development is funded by sponsors.
If mise saves you or your team time, please consider sponsoring at en.dev. Individual and company sponsorships keep mise fast, free, and independent.
v2026.6.11: : apk bootstrap, cleaner Windows shims, and aqua polishCompare Source
A focused release that adds Alpine
apkas a bootstrap package manager, stops the default Windowsexeshims from leaking into WSL, and fixes a handful of aqua, HTTP cache, Rust, and Deno corners.Added
bootstrap: Alpine Linux
apkjoins apt, dnf, pacman, and brew as a supported[bootstrap.packages]manager. Specify packages asapk:name(with optional@version), or pass--manager apkexplicitly; status, install, and upgrade all wire through the same paths as the other Linux managers (#10476 by @jdx).registry: Added
pinnipedto the registry (#10456 by @tony-sol).Fixed
mise run //projects/backendandmise run //...no longer behave like//projects/backend:*— the monorepo pattern parser now rejects path-only targets with a clear error pointing to//path:<task>or//path:*(#10479 by @jdx).exewindows_shim_modeno longer writes a second, extension-less bash shim next to<tool>.exe. Git Bash / Cygwin / MSYS2 already resolve a bareghtogh.exe, and dropping the extras stops them from leaking into WSL via/mnt/c/...PATH interop (the source of themise: not found/ infinite-recursion loops).filemode still emits the bash shim where it is required. Old extras are cleaned up on the nextreshim(#10475 by @JamBalaya56562).format_overridesare now parsed from the aqua registry and applied to the compiled package model. They run after version overrides and before normal platform overrides — matching aqua's own ordering — so per-OS archive formats finally resolve correctly. Aqua registry caches will rebuild on first use due to a serialized-layout bump (#10461 by @risu729).{{.Asset}}.minisignow render against the selected package asset, fixing signature verification for packages likejedisct1/minisign0.12 (#10462 by @risu729)..sha256sumfiles use PowerShellGet-FileHashmulti-line output. mise now parses that format alongside the standard whitespace-delimited one, validates the algorithm/length, and stores hashes lowercased as"<algo>:<hash>"(#10464 by @risu729).strip_componentsis now resolved before HTTP archive cache lookup and folded into thehttp-tarballscache key. Stripped and unstripped extractions of the same URL no longer share a cache entry, fixing tool-stub installs that re-used a previousbin_path-based extract (#10468 by @risu729).mise linkversions. External symlink targets remain classified as linked. This fixesmise install --lockedidempotency for HTTP-backed tools (#10463 by @risu729).rust-toolchain.tomlprofile,components, andtargetsare now stored on the generatedToolRequest, so install and lockfile-option resolution both read the samerequest.options()instead of re-parsing the file. As a side effect, lockfile keys are canonicalized: TOML arrays now match comma-separated strings,components/targetsare sorted and deduplicated, and an emptyprofileno longer emits a spurious key (#10178 by @risu729).COLORTERMis now passed through to child processes (alongsideTERM), preserving 24-bit truecolor signalling in sandboxed environments (#10451 by @sschuberth).2027.5.0, matching the warning emitted by the CLI (#10453 by @reitzig).minimum_release_ageexample uses6mo(not6m) for "6 months", matching jiff's friendly duration format (#10193 by @sisp).Changed
fuzzy-matchercrate (archived, last published 2020) withnucleo-matcherfor registry/task suggestion scoring and picker highlight indices (#10467 by @risu729).os-releaseandsys-infocrates in favor of mise's internal/etc/os-releaseparser, which is now shared by libc detection, env, Swift, and Erlang Linux fallbacks (#10465 by @risu729).Aqua Registry
New packages:
Latias94/merman,bitnami/sealed-secrets,coder/boo. Updated:suzuki-shunsuke/ghtkn.New Contributors
Full Changelog: jdx/mise@v2026.6.10...v2026.6.11
💚 Sponsor mise
mise is built by @jdx under en.dev — an independent studio making developer tooling (mise, aube, and more). Development is funded by sponsors.
If mise saves you or your team time, please consider sponsoring at en.dev. Individual and company sponsorships keep mise fast, free, and independent.
v2026.6.10: : Env defaults, Unix 7z, and stale-PATH fixesCompare Source
A focused release that adds a
defaultshorthand for env vars, brings.7zarchive support to Unix, and cleans up several long-standing PATH and shim edge cases on Linux, macOS, Windows, and WSL.Added
env: New
{ default = "fallback" }shorthand for[env](and config/task[vars]). The default applies only when the variable is unset or empty; existing non-empty values from the process env or earlier config are preserved. Mixingdefaultwithvalue,required, oragenow fails with a clear message (#10441 by @jdx).backend:
.7zarchives now extract on Unix as well as Windows, andstrip_componentsprobing works cross-platform. Migrated from the unmaintainedsevenz-rusttosevenz-rust2, and tightened extraction to reject directory traversal and absolute paths (#10434 by @risu729).Fixed
env_shell_expandis enabled,${VAR:-default}now follows POSIX semantics: empty strings are treated as missing (fallback applies),${VAR-default}only substitutes when the variable is unset, and fallback text is recursively expanded (e.g.${NONEXISTENT:-$OTHER}). Braced parsing is also stricter — unterminated${…stays literal and}inside$(…)no longer closes the brace (#10445 by @jdx, fixes #10444).mise x/run/envnow strip mise-managed install directories from the inherited PATH when composConfiguration
📅 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 was generated by Mend Renovate. View the repository job log.