Skip to content

chore(deps): update dependency jdx/mise to v2026.9.1 - #3502

Merged
syphar merged 1 commit into
mainfrom
renovate/jdx-mise-2026.x
Sep 7, 2026
Merged

chore(deps): update dependency jdx/mise to v2026.9.1#3502
syphar merged 1 commit into
mainfrom
renovate/jdx-mise-2026.x

Conversation

@renovate

@renovate renovate Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Type Update Change
jdx/mise uses-with minor 2026.8.152026.9.1

Release Notes

jdx/mise (jdx/mise)

v2026.9.1: : Bootstrap firewall limiting, scoped locked mode, and lazy tools in tasks

Compare Source

This release expands bootstrap system setup with firewall rate limiting and more systemd directives, adds a scoped locked mode for mixing distribution and user tool policies, and fixes lazy tools so they install when invoked from tasks and mise x.

Added

  • bootstrap: New action = "limit" for incoming TCP firewall rules rate-limits connections per source. It maps to UFW's native limiting and bounded per-source IPv4/IPv6 nftables meters; firewalld fails closed since it cannot express safe per-source limiting. Limit rules are treated as preserving SSH access by the lockout guard. (#​12669 by @​jdx)

  • bootstrap: Bootstrap systemd units now support requires (Requires=), repeatable environment_file (EnvironmentFile=), nice, and umask, with validation for nice ranges (-20 to 19) and octal umasks. Note that requires does not imply ordering; use after for that. (#​12683 by @​jdx)

  • config: New global-only locked_scopes setting (also MISE_LOCKED_SCOPES) lets you scope locked mode to specific config sources, so a distribution can ship rolling or lazy tools through /etc/mise/config.toml without forcing users to maintain a system lockfile. Defaults to all three scopes to preserve existing behavior. (#​12667 by @​jdx)

    [settings]
    locked_scopes = ["project", "global"]

Fixed

  • task: Lazy tools (lazy = true) now install when their command is invoked from a mise run task or mise x, matching the behavior of an activated shell. mise inserts the shim farms after real tool paths for lazy toolsets and reconciles missing bootstrap shims for hand-edited declarations, so tasks no longer fail with command: not found. (#​12687 by @​jdx)
  • env: Environment variables configured for removal (false values and unset directives) are now consistently unset across mise exec, tasks, mise env, hook-env, deps, and tool stubs, so inherited or secret variables are no longer leaked back into child processes. (#​12664 by @​jdx)
  • shim: mise reshim can now safely target shared executable directories like ~/.local/bin or /usr/local/bin. It identifies mise-owned shims and only replaces or prunes those, leaving unmanaged files and symlinks in place, and --force rebuilds mise-owned shims rather than wiping the whole directory. (#​12675 by @​jdx)
  • brew-cask: Cask binaries that reference their surrounding extracted payload now keep that payload beside the staged binary, so tools like codex that exec helpers or read manifests from their own tree continue working after temporary install files are cleaned up. (#​12686 by @​azohra)
  • upgrade: Fixed recursive deferred tool pruning that could hang new terminals when prompt hooks triggered a full tracked-config scan. Deferred cleanup now takes a non-blocking lock and is skipped for shell-integration and --no-config commands. (#​12676 by @​jdx)
  • install: Install failures caused by a missing marker file now name the affected file and operation instead of reporting a bare OS error. (#​12624 by @​JamBalaya56562)
  • install: mise install --dry-run for an s3 tool that only declares a URL for another platform now reports the missing platform and available options instead of falsely claiming it would install. (#​12641 by @​hktitof)

Changed

  • registry: Registry command (shim) names are now inferred from the preferred Aqua package at build time, removing redundant bins declarations from hundreds of registry entries. Explicit bins are kept only where mise intentionally exposes a different command set, and mise registry --json exposes the inferred names. (#​12668 by @​jdx)

New Contributors

Full Changelog: jdx/mise@v2026.9.0...v2026.9.1

💚 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.9.0: : Lazy Tool Shims

Compare Source

This release introduces lazy tool shims, which install a tool automatically the first time one of its commands is invoked, plus an opt-in Erlang precompiled OS override and a fix for nested mise calls during postinstall hooks.

Added

  • tools: Declare a tool as lazy in [tools] with lazy = true and mise generates bootstrap shims into its normal user/system shim farms. The provider is installed only when one of its commands is first called, then executes immediately; subsequent calls run the real binary without another mise dispatch. Registry tools derive their command names from registry bins, while explicit or non-registry backends declare them with lazy_bins. A bare mise install skips lazy declarations; use mise install --include-lazy to provision them all. New global path settings (shims_dir/MISE_SHIMS_DIR, system_installs_dir/MISE_SYSTEM_INSTALLS_DIR, system_shims_dir/MISE_SYSTEM_SHIMS_DIR) and mise reshim --system support system-scoped and collocated layouts. (#​12594 by @​jdx)

    [tools]
    node = { version = "24", lazy = true }
    "github:example/acme" = { version = "1.2.3", lazy = true, lazy_bins = ["acme", "acmectl"] }
  • erlang: New erlang.precompiled_os setting (and MISE_ERLANG_PRECOMPILED_OS) opts into a specific Bob Ubuntu build target—including Ubuntu 26.04—on compatible glibc distributions. Automatic target detection is unchanged, and lockfiles now preserve the selected OS for reproducible builds. Note the portability constraints around shared-library SONAMEs documented with the setting. (#​12637 by @​jdx)

Fixed

  • install: Postinstall hooks now activate the exact tool version being installed, so nested mise invocations (such as mise which or mise ls) resolve that version instead of an older discoverable one—or losing the tool entirely when it was declared through a custom config path with mise use --path. (#​12635 by @​jdx)

Registry

New Contributors

Full Changelog: jdx/mise@v2026.8.16...v2026.9.0

💚 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.16: : Command wrappers and Windows shell fixes

Compare Source

This release adds configurable command wrappers for intercepting ordinary commands, alongside a batch of shell and PATH fixes that make Windows activation more reliable and clearer upgrade and error messaging.

Added

  • shims: New [wrappers] config lets you intercept an ordinary command name with a different command, arguments, and environment. Wrappers take precedence over mise-managed tools, and mise strips its dispatch directories before delegating so the underlying tool still resolves from mise or the system. Works with normal activation, activate --shims, and mise exec; managed wrapper shims are refreshed by mise reshim. (#​12617 by @​jdx)

    [tools]
    mr-boxington = "1.1.0"
    
    [wrappers.cargo]
    command = "mbx"
    env = { MBX_CARGO_SHIM_MODE = "1" }

Fixed

  • elvish: mise env and mise activate --shims now emit valid Elvish quoting instead of bash's. This fixes several corruptions that mostly surfaced on Windows: stray quotes and the wrong PATH separator in activate --shims, apostrophes and ! arriving with backslashes, and \n sequences in paths like C:\nodejs being turned into newlines. (#​12584 by @​JamBalaya56562)

  • fish: mise env -s fish now splits PATH on the host's separator and recognizes the Path spelling on Windows, so semicolon-separated Windows paths are no longer severed at each drive letter. Empty PATH segments are dropped rather than adding the current directory. (#​12582 by @​JamBalaya56562)

  • http: The "No URL for platform" error now lists every platform key a tool actually declares in mise.toml, including typos and unrecognized names, instead of falling back to a misleading "requires 'url' option" message with an empty available list. (#​12580 by @​JamBalaya56562)

  • upgrade: When tools are current for their configured version ranges but newer releases exist beyond those ranges, mise upgrade no longer prints "All tools are up to date". It now lists the affected tools with their current and available versions plus the config source, and points to mise upgrade --bump. (#​12613 by @​jdx)

    Newer versions are available but do not match the configured version ranges:
      node 26.7.0 → 26.8.1 (~/.config/mise/config.toml)
    Run `mise upgrade --bump` to update the configuration and upgrade.
    
  • task: Double-dash task arguments are now preserved with double_dash="preserve". The first -- separator was previously consumed by the outer CLI parser and lost before reaching the task. (#​12628 by @​jdx)

  • npm: Embedded Aube npm installs are now isolated as a standalone one-package workspace, so a pnpm-workspace.yaml above MISE_DATA_DIR can no longer redirect the install into the outer workspace or mutate it. This mainly affects GitLab CI layouts where the data dir lives under CI_PROJECT_DIR. (#​12630 by @​jdx)

  • bootstrap: Repository status checks now honor the global --jobs limit, so mise bootstrap status, apply, and update run these read-only git checks with bounded concurrency. (#​12629 by @​jdx)

Changed

  • registry: acli, mimirtool, and specstory are no longer restricted to Linux and macOS and can now be installed and run on Windows. (#​12627 by @​JamBalaya56562)
  • registry: llama.cpp resolution now includes prereleases, since upstream began flagging its rolling bNNNN builds as GitHub prereleases. The existing minimum-release-age and b version prefix behavior is unchanged. (#​12614 by @​jdx)

Full Changelog: jdx/mise@v2026.8.15...v2026.8.16

💚 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)

  • Branch creation
    • Between 12:00 AM and 03:59 AM, only on Monday (* 0-3 * * 1)
  • 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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot requested a review from a team as a code owner September 7, 2026 01:22
@github-actions github-actions Bot added the S-waiting-on-review Status: This pull request has been implemented and needs to be reviewed label Sep 7, 2026
@syphar
syphar merged commit c3eff3b into main Sep 7, 2026
12 checks passed
@github-actions github-actions Bot removed the S-waiting-on-review Status: This pull request has been implemented and needs to be reviewed label Sep 7, 2026
@syphar
syphar deleted the renovate/jdx-mise-2026.x branch September 7, 2026 07:44
@github-actions github-actions Bot added the S-waiting-on-deploy This PR is ready to be merged, but is waiting for an admin to have time to deploy it label Sep 7, 2026
@syphar syphar removed the S-waiting-on-deploy This PR is ready to be merged, but is waiting for an admin to have time to deploy it label Sep 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant