Added
- (github) Use the shared
mise-versionshost for release metadata and artifact attestations before falling back toapi.github.com, dramatically cutting anonymous GitHub API usage in CI/Docker (#10127 by @jdx). - (node) New
node.npm_shimsetting (MISE_NODE_NPM_SHIM) to opt out of the bundled npm wrapper, lettingcorepackmanagebin/npmcleanly (#10082 by @jjb). - (npm) New
allow_buildstool option for npm-backend installs that expands to--allow-build=<pkg>for aube and pnpm, accepting a string, array, ortruefor all builds (#10116 by @jdx).
Fixed
- (backend) Strip the system shims dir from
dependency_envPATH to prevent npm/go shim re-entry fork-bombs in devcontainer/Docker setups usingmise install --system(#10019 by @andrewjamesbrown). - (backend) Improve libc detection on musl distros so installing
gcompaton Alpine no longer flips mise to glibc binaries (#10020 by @thespags). - (aqua) Skip in-place link creation when src and dst alias the same inode (fixes godot install on macOS/APFS) (#10012 by @tvararu).
- (aqua) Lock
github_contentpackages using raw GitHub content URLs instead of archive URLs (#10102 by @risu729). - (toolset)
hook-envand other prefer-offline flows no longer fetch remote versions to resolve concrete/latest/prefix:*specs, speeding up shells with many fuzzy tools (#10098 by @jdx). - (upgrade) Preserve installed versions still pinned by other tracked project lockfiles during upgrade cleanup (#10114 by @jdx).
- (upgrade) Improve current version detection so prefix requests like
go = "1.25"show the best matching installed version in summaries (#9973 by @jdx). - (lock) Allow
mise lockandmise upgradeto refreshmise.lockeven whenlocked = trueis set (#10111 by @jdx). - (install) Reject install requests whose resolved backend is in
disable_backends, including explicit syntax likeubi:owner/repo(#9905 by @risu729). - (use) Reject tool version strings that start with
-(e.g.mise use dummy@--version) (#10113 by @jdx). - (en) Preserve
MISE_ENV/-Eprofile when an activated subshell sourcesmise activate(#10124 by @jdx). - (unset) Respect
MISE_GLOBAL_CONFIG_FILEwhen runningmise unsetfrom$HOME, matchingmise set/use(#10105 by @jdx). - (task) Set
config_rooton tasks loaded from global config so{{config_root}}renders correctly (#10106 by @jdx). - (task) Render templates and expand
~/in sandboxallow_read/allow_writepaths (#10112 by @jdx). - (shim) Skip dot-prefixed (hidden) executables when generating shims (#10123 by @jdx).
- (pipx) Combine
--pip-args=VALUEinto a single argv element so pipx's argparse accepts values starting with--(#10120 by @iloveitaly). - (security) Apply
url_replacementsto the GitHub attestations API base URL (#9971 by @SlaterByte). - Show the mise version in friendly error output (#10109 by @jdx).
- (copr) Increase build timeout (#10071 by @jdx).
Performance
- Cache repeated successful path canonicalization across hot PATH/shim/activation lookups (#10068 by @jdx).
Changed
- Registry: use the npm backend for
npmon Windows (aqua's standalonenpm/clitarball is broken on Windows) (#10101 by @risu729). - Registry: allow narrow dependency builds for npm-primary tools (
wrangler,gemini-cli,vercel,codebuff,jules,orval,serverless), and drop npm fallbacks forast-grep,lefthook,claude,code(#9916 by @risu729). - Registry: add
modem-dev/hunk(#10051 by @naoki-mizuno),wacli(#10043 by @dovocoder),liquibasevia the github backend (#10052 by @benberryallwood),longbridge-terminal(#10073 by @hogan-yuan), and makeaubemore resilient (#10092 by @bgeron, #10110).
Documentation
- Fix Scoop installation section (#10059 by @ofek).
- Clarify untrusted config behavior (#10097 by @jdx).
- Remove outdated terraform
main.tfreference (#10099 by @risu729). - Remove broken "How I Use mise" link (#10081 by @HYP3R00T).
💚 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.