Skip to content

chore(deps): update support-deps - #1593

Merged
eoghanriley merged 1 commit into
mainfrom
renovate/support-deps
Oct 9, 2026
Merged

eoghanriley merged 1 commit into
mainfrom
renovate/support-deps

Conversation

@renovate

@renovate renovate Bot commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change
defenseunicorns/uds-common minor v1.30.1 → v1.31.0
defenseunicorns/uds-core patch 1.14.0 → 1.14.1
ghcr.io/defenseunicorns/packages/uds/core patch 1.14.0-upstream → 1.14.1-upstream
hk tools minor 2.4.0 → 2.5.0
jdx/mise uses-with patch 2026.10.3 → 2026.10.6
jdx/mise-action action patch v5.1.0 → v5.1.1

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

defenseunicorns/uds-common (defenseunicorns/uds-common)

v1.31.0

Compare Source

Features
Miscellaneous
defenseunicorns/uds-core (defenseunicorns/uds-core)

v1.14.1

Compare Source

Bug Fixes
jdx/hk (hk)

v2.5.0

Compare Source

🚀 Features
  • (builtins) keep CRLF files CRLF in trailing_whitespace, newlines, and mixed_line_ending by @​jdx in #​1621
  • (builtins) report revive findings as diagnostics by @​jdx in #​1626
  • (builtins) report buf_lint and clang_format findings as diagnostics by @​jdx in #​1627
  • (builtins) report actionlint findings as diagnostics by @​jdx in #​1623
  • (builtins) report flake8 findings as diagnostics by @​jdx in #​1624
  • (builtins) report mypy, mado and six more linters as diagnostics by @​jdx in #​1630
  • (config) read column-less, prefixed and summarized output with the gcc diagnostic format by @​jdx in #​1629
  • (init) detect 47 more tools from their config files by @​jdx in #​1576
  • (mcp) let agents run checks on changed or unstaged files only by @​jdx in #​1600
  • (mcp) let agents run checks on staged files only by @​jdx in #​1640
  • (test) assert normalized diagnostics in step tests by @​jdx in #​1622
  • (validate) warn about misspelled properties, no-op depends, unmatchable globs and loose min_hk_version by @​jdx in #​1590
🐛 Bug Fixes
  • (agent) make --safe refuse a hook report with unknown or destructive effect by @​jdx in #​1573
  • (agent) make Claude Code and Codex Stop hooks block with a valid decision and exit 0 by @​jdx in #​1604
  • (builtins) check large files and case conflicts in binary files by @​jdx in #​1571
  • (check) fail on unknown --step names instead of passing after running no steps by @​jdx in #​1603
  • (ci) fail test:bats on a mistyped path or when no tests run by @​jdx in #​1563
  • (cli) keep generated output exit codes on closed pipes by @​jdx in #​1540
  • (cli) print failures once, without Rust locations or a bogus fix hint by @​jdx in #​1588
  • (config) union user skip_steps, skip_hooks and hide_warnings with the project's, and warn when hk.local.pkl replaces hk.pkl by @​jdx in #​1596
  • (config) honor top-level jobs, accept documented HK_STASH values, and fix the hk config crash by @​jdx in #​1594
  • (config) honor subproject skip_steps and warn about ignored subproject settings by @​jdx in #​1615
  • (docs) stop sidebar links showing through the logo when it bounces by @​jdx in #​1554
  • (git) skip tracked files with non-UTF-8 names with a warning in --all, --glob, --from-ref and file arguments by @​jdx in #​1613
  • (init) explain why a hook is missing and print next steps after hk init by @​jdx in #​1564
  • (install) correct the --force-local message when a global install exists by @​jdx in #​1616
  • (install) keep hook commands working after hk upgrades and under a minimal PATH by @​jdx in #​1597
  • (mcp) make cancel_run stop the real hk run instead of sticking in cancelling by @​jdx in #​1607
  • (mcp) cap step output in structured results and report pre-run failures by @​jdx in #​1605
  • (mcp) include untracked and binary files in get_diff and surface capture errors by @​jdx in #​1601
  • (pkl) load configs that amend the v1 package schema by @​jdx in #​1560
  • (pkl) hide mirror credentials in failed package download errors by @​jdx in #​1620
  • (pkl) show file, line and column for Pkl syntax errors, including in imported files by @​jdx in #​1598
  • (stash) preserve CRLF when restoring unstaged files by @​jdx in #​1535
  • (stash) restore unstaged text over a staged binary file no step changed by @​jdx in #​1580
  • (stash) stash tracked files whose names start with a colon by @​jdx in #​1614
  • (stash) keep a staged edit when its worktree copy was reverted to HEAD by @​jdx in #​1602
  • (stash) keep a merge or cherry-pick in progress when stashing the worktree by @​jdx in #​1609
  • (stash) restore hk's own stash entry by commit id so concurrent stashes are never touched by @​jdx in #​1637
  • (stash) serialize stash and restore across hk processes and linked worktrees by @​jdx in #​1636
  • (stash) restore stashed changes when hk is terminated and recover them after a crash by @​jdx in #​1641
  • (step) isolate formatter patches from concurrent commands and staging by @​nettlesh in #​1392
  • (step) keep interactive steps in hk's process group by @​jdx in #​1557
  • (step) say "command not found" when an argv step's tool is not installed by @​jdx in #​1579
  • (step) add exec_ok for condition shell tests and stop exec panicking by @​jdx in #​1610
  • (step) run steps that depend on a step with no files instead of hanging by @​jdx in #​1584
  • (step) select files in directories whose names contain brackets or braces by @​jdx in #​1592
  • (step) keep percent signs in file names literal under cmd.exe by @​jdx in #​1568
  • (step) end tools left running by a fail-fast cancel on Windows by @​jdx in #​1625
  • (step) exclude a directory's files when a step or group exclude names it by @​jdx in #​1606
  • (step) report diagnostic paths relative to the repository root for steps that run in a subdirectory by @​jdx in #​1638
  • (step) run a custom shell directly on Windows and accept a quoted shell path by @​jdx in #​1628
  • (step) batch Windows cmd shims below the cmd.exe line limit by @​jdx in #​1618
  • (step) type scripts whose env shebang has -S, options or variables by @​jdx in #​1611
  • (step) keep diagnostics from every started job when another job fails by @​jdx in #​1642
  • (step) report steps stopped by Ctrl-C as cancelled instead of failed by @​jdx in #​1643
  • (util) check files whose 8 KiB probe splits a multibyte char and keys in non-UTF-8 files by @​jdx in #​1572
  • (util) accept git-generated merge and revert titles in check-conventional-commit by @​jdx in #​1566
  • (util) check protected branch, exec bits and case conflicts against git's own state by @​jdx in #​1577
  • (util) keep non-UTF-8 files and symlinks intact in fix-smart-quotes by @​jdx in #​1570
  • (validate) reject dependency cycles, self-dependencies and invalid step globs at load time by @​jdx in #​1567
📚 Documentation
  • (builtins) show file selectors, script commands and options in the catalogue by @​jdx in #​1562
  • (config) explain where diagnostics come from and when a step needs diagnostic_format by @​jdx in #​1619
  • (config) document sharing one configuration across repositories by @​jdx in #​1591
  • (settings) describe pkl rewrite and CA variables for the built-in evaluator by @​jdx in #​1617
  • refresh competitor benchmark for v2.4.0 by @​jdx in #​1536
  • replace the sea shanty with Bound for the Main and its music video by @​jdx in #​1541
  • take the new shanty video down if its poster cannot be published by @​jdx in #​1543
  • add a sea shanty mode to the landing page by @​jdx in #​1544
  • keep a link to the sea shanty when scripting is off by @​jdx in #​1545
  • generate the pirate CLI reference from the English one by @​jdx in #​1550
  • restrict AI replies on Discussions and Issues and note the instant ban by @​jdx in #​1559
  • start getting started with a first configuration that needs no linters by @​jdx in #​1561
  • correct stash, type-checker lock, and patch-apply descriptions by @​jdx in #​1578
  • add lefthook and husky with lint-staged migration guides by @​jdx in #​1589
⚡ Performance
  • (config) evaluate only the builtins a config uses, cutting cold load from ~1.4 s to ~0.07 s by @​jdx in #​1581
  • (git) skip the untracked scan for runs that name their files, e.g. hk check FILE by @​jdx in #​1587
  • (stash) restore unstaged files no step changed with one git process by @​jdx in #​1612
  • (stash) stop rescanning the worktree before stashing, saving ~80 ms on large repos by @​jdx in #​1595
  • (step) resolve workspace_indicator once per directory, saving ~120 ms per step in large monorepos by @​jdx in #​1599
  • (step) run read-only check-only steps side by side in fix hooks by @​jdx in #​1586
  • use mimalloc as the global allocator by @​jdx in #​1635
  • bump pklr to 4.0.0 (hk validate 14x faster) by @​jdx in #​1644
🧪 Testing
  • (windows) run every e2e-win case and cover fix, staging and installed hooks by @​jdx in #​1574
  • fix bats teardown and event-order flakes and surface CI retries by @​jdx in #​1583
🛡️ Security
  • (deps) update dependency esbuild to ^0.28.0 by @​renovate[bot] in #​1548
  • (step) refuse check_diff patches that write inside .git by @​jdx in #​1585
  • point the landing page at the sea shanty by @​jdx in #​1542
  • turn sea shanty mode into a pirate edition of the whole docs site by @​jdx in #​1549
  • document what hk executes, global hook reach, and --safe limits in a security model page by @​jdx in #​1575
  • bring the sea shanty contributing page up to date with the English page by @​jdx in #​1631
🔍 Other Changes
  • (benchmark) gate hook stashing and cold config loads in the perf check by @​jdx in #​1608
  • (entire) store checkpoints in a private repository by @​jdx in 74bd981
  • (entire) commit codex session hooks by @​jdx in 71966d2
  • (entire) commit claude session hooks by @​jdx in 2298ebf
  • (entire) store checkpoints in a private repository by @​jdx in 4a4e806
  • (entire) restore lower-cost trail findings by @​jdx in 6eed674
  • (install) refuse legacy hook installs that overwrite foreign hooks or symlinks by @​jdx in #​1593
  • (release) smoke-run every release archive before the release is created by @​jdx in #​1565
  • (security) check RustSec advisories in CI and document gh release verify by @​jdx in #​1569
  • unblock the docs deploy and stop re-rendering unchanged videos by @​jdx in #​1551
  • limit each contributor to one open draft PR by @​jdx in #​1555
  • lint test code by running clippy with --all-targets by @​jdx in #​1582
  • combine hosted Bats configurations by @​jdx in #​1633
  • skip full checks for docs-only pull requests by @​jdx in #​1634
  • remove redundant package.homepage from Cargo.toml by @​jdx in #​1639
📦️ Dependency Updates
jdx/mise (jdx/mise)

v2026.10.6: : Per-machine [vars] prompts, local config includes, and working-tree changes in --affected

Compare Source

[vars] entries can now ask once per machine and remember the answer, include accepts local files, and mise run --affected now counts uncommitted work and no longer needs experimental = true. On a fresh machine, mise bootstrap can install git and ssh before it clones. The release also fixes several dotfiles history issues and stops lazy tools from triggering remote version lookups when something else launches.

Added

  • Per-machine [vars] prompts. Give a var a prompt, plus either a default or required. mise asks for it once and saves the answer in $MISE_STATE_DIR/vars.toml, outside your config and dotfiles history. Templates, tasks and tools then read it as usual. One shared dotfiles setup can use this to set a different Git identity on each machine. #​14190

    [vars.git_name]
    default = "Ada Lovelace"
    prompt = "Git author name"
    
    [vars.git_email]
    required = "Run mise vars prompt to set git_email"
    prompt = "Git email"
    mise vars                       # list every var and where its value comes from
    mise vars prompt                # ask for every unanswered prompt var (or name some)
    mise vars git_name=Ada          # save a value without a prompt
    mise vars unset git_name        # forget a saved value
    mise bootstrap --prompt-vars    # prompt during a bootstrap run, e.g. with --adopt

    Only mise vars prompt and mise bootstrap --prompt-vars ever ask. Everything else uses the saved answer, then the default. Precedence, highest first: the process environment, a value from a higher-precedence config file, the saved answer, the default. Answers are keyed by var name, so projects that use the same name share one answer on a machine. prompt is not allowed in [env].

  • Local paths in include. include in mise.toml now accepts local TOML files, not just git:: and oci:: references. A path can be relative to the including file or absolute. Local files merge the same way as remote ones, ranking just below the including file. They are read on every load, so edits apply immediately and invalidate the cached env. Paranoid mode rejects local includes, and safe mode still skips all includes in project config. #​14178

    include = ["./config/tools.toml", "/etc/mise/team.toml"]
  • mise bootstrap installs git and ssh before cloning. mise bootstrap --from and --adopt used to fail with a spawn error when git was missing. Now mise checks for git, and for ssh when the URL is ssh:// or user@host:path, and offers to install whatever is missing with the host package manager. Supported managers are apt, dnf, pacman, apk, zypper, Homebrew, scoop and winget. --yes accepts the offer without asking, and --dry-run only reports what is missing. #​14188

  • mise dot save --re-encrypt. After you change [history.encryption] recipients, a normal save leaves some encrypted files under their old keys: manual-save entries the save doesn't name, and other-platform variants. Add --re-encrypt to re-encrypt every saved file in the new checkpoint to the current recipients. It never captures unsaved edits. If this machine can't unlock some of the files, nothing is saved and the error lists all of them. #​14210

  • mise dot status shows unsaved changes. It now lists tracked paths that changed since the latest checkpoint. Unsaved edits were previously invisible there when the watcher was stopped or an entry used --no-autosave. --json reports these paths as history.unsaved. The value is null when they can't be determined, for example with no checkpoint yet or with encrypted files this machine can't compare without prompting. #​14209

Changed

  • mise run --affected now counts working-tree changes, and the workspace graph is no longer experimental. Besides the committed base...head range, --affected now also counts staged and unstaged edits and untracked files that aren't ignored. You can narrow it with --affected-committed, --affected-uncommitted and --affected-untracked, which can be combined (environment variables: MISE_AFFECTED_*). Working-tree changes only count when the head is your current checkout. To get the old committed-only selection, for example in a CI job that writes untracked files before it runs, use --affected-committed. --affected, mise tasks graph, [monorepo.task_defaults], [monorepo.projects] and task.auto_infer no longer require experimental = true. #​14214

    mise run --affected build                                         # committed + uncommitted + untracked
    mise run --affected --affected-uncommitted --affected-untracked build  # only what you haven't committed yet
    mise run --affected --affected-committed build                    # committed range only, as before
  • Credential checks for dotfiles. Files with names ending in .example, .sample or .template no longer match the credential name rules. The content scan before publishing still checks them. Once you approve a file for plaintext tracking, mise no longer warns about it on every save. #​14204

  • mise dot track only asks about plaintext at a terminal. Before saving a credential-named file in plaintext, it now asks only when both stdin and stderr are terminals. Previously, a piped line, such as the next entry in a while read loop, could be taken as the answer. Scripts need --allow-plaintext or --encrypt. #​14205

Fixed

  • Lazy tools no longer trigger remote lookups for other lazy tools. Previously, mise looked up versions for configured lazy tools that weren't installed, even though they weren't being launched. With a cold cache and no network, launching one tool waited on each lookup and could print "Failed to resolve tool version list" warnings. In one offline test a launch took 41 seconds. This no longer happens in these cases:

    • the update that runs before an auto_update tool launches (#​14195)
    • after mise x or a shim installs a new version (#​14197)
    • the first launch of a lazy tool through its shim (#​14201)

    mise install, mise upgrade and mise use still resolve everything.

  • Too many open files with parallel npm: installs. Parallel installs could fail under macOS's default launchd soft limit of 256, for example when mise was started from a LaunchAgent. On Unix, mise now raises its soft open-file limit at startup toward the hard limit, up to 10240, and never lowers it. #​14174, #​14216

  • go: tools with an untidy go.mod. Tools whose published go.mod is missing a requirement now install, for example go:tailscale.com/cmd/tailscale. mise now passes -mod=mod to go install instead of -mod=readonly. A project's GOFLAGS=-mod=vendor still doesn't affect these installs. #​14180 (@​JamBalaya56562)

  • Config at the filesystem root. A config file at /, such as /mise.toml in a Docker image, made mise install and mise exec panic. It now works. #​14182

  • .NET installs. Installing a .NET SDK no longer fails with "was not found in dotnet --list-sdks output" when another mise-managed SDK comes before the shims on PATH. The post-install check now runs the new SDK's dotnet directly. #​14189

  • Shims and directories. Shims and mise which no longer resolve a bin name to a directory in another tool's bin path. Previously, hunk's skills/ directory blocked npm:skills with "Permission denied". #​14193

  • mise oci build and multiple versions. A tool pinned to several versions is now written to the embedded /etc/mise/config.toml as a single array, in resolution order. Previously each version got its own duplicate key, which made the config unreadable inside the container. #​14200 (@​JamBalaya56562)

  • Encrypted files a sync can't unlock. mise bootstrap --adopt, mise dot pull and mise dot sync now list every encrypted file they can't unlock in one error, instead of stopping at the first one. Damaged files still stop the sync immediately. #​14208

  • Rollback and undo messages. mise dot rollback <path> now names the checkpoint that saved the restored version, which matches mise dot history --path. Rollback and undo also name both checkpoints they record: the result, and the one holding the state before the operation. Previously, rollback could name a checkpoint that history --path didn't list. What gets restored is unchanged. #​14207, #​14211

  • mise dot status on adopted machines. On a machine that adopted a shared setup, it no longer prints "nothing configured in [dotfiles]" while history tracks entries. #​14206

New Contributors

Full Changelog: jdx/mise@v2026.10.5...v2026.10.6

💚 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.5: : Java defaults to Temurin, per-machine and local-only dotfile history, packslip workflow pinning

Compare Source

Java versions without a vendor prefix now install Eclipse Temurin builds. Dotfiles gain per-machine and local-only history, a merge = "missing" mode, and a secret check before mise dot sync publishes anything. Packslip tools can be pinned to the workflow that signs their releases. Several features documented as experimental now actually require experimental = true. The rest of the release is fixes across tasks, shims, config loading, bootstrap and backends.

Breaking Changes

  • java@21, java@lts and java@latest now install Temurin. The default of java.shorthand_vendor changes from openjdk to temurin. The jdk.java.net OpenJDK builds stop at the next feature release, so java@21 was stuck on 21.0.2 from January 2024. Vendor-prefixed requests (openjdk-21, corretto-21, ...) are not affected. Installed OpenJDK versions keep working, and mise upgrade offers the Temurin build. Shorthand versions now include Temurin's build suffix (for example 21.0.12+101.0.LTS). Temurin has no builds of Java 9, 10 or 12–15, so use openjdk-12 and similar for those. #​14146
    • Lockfiles: existing shorthand lock entries record shorthand_vendor = "openjdk". Without that setting, mise install --locked fails with java@21 is not in the lockfile. Either keep OpenJDK:
      [settings]
      java.shorthand_vendor = "openjdk"
      # or per project: java = "openjdk-21"
      or switch to Temurin with mise lock --bump java and commit the result.
  • Some experimental features now require experimental = true (or MISE_EXPERIMENTAL=1) when you use them. Config that only mentions them still loads. #​14114
    • Running a task with a git:: remote file, including through mise run --dry-run, mise watch, or as a dependency. Commands that only inspect tasks (tasks ls, tasks info, tasks deps, generate task-docs) show the task from its TOML and warn once that the file wasn't fetched. These were documented as experimental but were missing the check in the codebase.
    • git:: and oci:: entries in task_config.includes. These are skipped with a warning.
    • OpenTelemetry export of mise run when an OTLP endpoint is set.
    • Installing spinel: tools.
  • mise.local.toml now overrides mise.<env>.toml in the same directory, as the docs already said. Before, the committed environment file won in project directories, and also in ~/.config/mise when the walk up from the cwd reached it. Within each directory the order is now, highest first: mise.<env>.local.toml, mise.local.toml, mise.<env>.toml, mise.toml. If you relied on the environment file winning, move those keys into mise.<env>.local.toml. #​14148
  • MCP: in the mise://tasks resource, env is now an array of env directive strings, the same format as mise tasks ls --json. It was always an empty object before. #​14111
  • mise settings set and add refuse writes that would have no effect. This covers early-init settings (env, ceiling_paths, env_conf_d, ...) written to a config file, and global-only settings (yes, paranoid, trusted_config_paths, ...) written with --local. The error says where the setting has to go: miserc.toml, the global config, or the MISE_* variable. #​14126

Added

Dotfiles
  • Per-machine tracked files. Some files describe the machine, such as a monitor layout. Use variants = [{ machine = true }] or mise dot track --machine to keep a separate history for each machine. Sync pushes every machine's version to the origin but never applies one machine's version on another. Each machine gets a generated name, which you can set with [history] machine = "desk". A machine variant must be the entry's only variant and can't be combined with encrypt. Upgrade every machine that shares a setup before using it. #​14062
    [dotfiles]
    "~/.config/hypr/monitors.lua" = { mode = "track", variants = [{ machine = true }] }
  • mode = "track-local" (or mise dot track --local) keeps a file's history in a separate store on this machine, with no origin. The file never reaches the shared manifest, a commit or a push. Commands that name a path use the history that holds it. Use mise dot --local history or mise dot --local undo to work with the local history directly. save, capture and watch cover both histories. #​14082
  • merge = "missing" sets only the keys the target file doesn't have yet. Values an app writes itself, such as the model picked with /model in Codex or Claude Code, are left alone. Works with TOML, YAML and JSON. #​14081
    [dotfiles]
    "~/.codex/config.toml/shared" = { merge = true }
    "~/.codex/config.toml/defaults" = { source = "codex/defaults.toml", merge = "missing" }
  • Merge entries can leave out source. mise then reads the target's path under dotfiles.root. Switching an entry from symlink to merge now replaces a link that points at the merge source with a writable copy, so the app's own keys survive. #​14076
  • mise dot sync refuses to publish saved versions that look like secrets. It checks for provider tokens, private key blocks, and *_KEY/*_TOKEN/*_SECRET/*_PASSWORD assignments. Only versions the origin doesn't have yet are checked. The error names the file, line and version, never the value. --allow-plaintext-history skips the check. #​14171
  • mise bootstrap --adopt <url> --take-remote-all takes the repository's version of every file that differs, in one step. Combined with --replace-history, it also adopts the repository on a machine that already has history of its own. #​14065
  • mise doctor shows the dotfiles history repo path and the connected origin (URL, branch, sync mode), in both text and --json output. #​14173
Bootstrap
  • [bootstrap.files] and [bootstrap.directories] accept the same os selector as packages. Entries that don't match the host are skipped completely. #​14058
    [bootstrap.files."/etc/docker/daemon.json"]
    os = "linux"
    source = "./files/docker-daemon.json"
  • fish = "auto" in [bootstrap.mise_shell_activate] writes a block that runs mise activate fish in interactive shells and --shims everywhere else. #​14172
  • [bootstrap] is now allowed in config includes. It merges below the including file, so a shared baseline can declare packages, hooks and services, and the project still wins on any key it sets itself. #​14176
  • Systemd units accept state = "absent", which stops, disables and deletes the matching mise-managed service and timer. mise bootstrap unapply now also removes the units an environment added. #​14139
Tools and backends
  • Packslip workflow option. It accepts only releases signed by the named GitHub Actions workflow on tags. It takes one workflow or a list, and an entry can name a ref (release.yml@refs/heads/main). It can't be combined with pubkey, identity, identity_prefix or issuer. #​14075, #​14093
    [tools]
    "packslip:github.com/aubepkg/aube" = { version = "latest", workflow = ["release-plz.yml", "release.yml"] }
    • Registry entries for dagu, timoni, helmfile, fnox, hk, usage, communique, mr-boxington, pitchfork, aube and worktrunk are now pinned to the workflow that signs their releases. A workflow or pubkey you set yourself replaces the registry pin. #​14092, #​14091, #​14073 (@​max-sixty)
  • MCP install_tool is implemented. It installs the requested version, or the configured version, or latest, and returns the resolved version and install path. install_tool and run_task now refuse to act on untrusted config instead of trusting it on the client's behalf. #​14111
  • mise installs migrate no longer fails on installs it can't reinstall, such as withdrawn releases, signer changes or no network. It moves them into the identity layout as they are and leaves a link at the old path. It also handles lockfile-suffixed ~aube~/~uv~ directories correctly. #​14079
  • Registry: mprocs is renamed to dekit to match upstream, and mprocs stays as an alias. From v0.10.0 the binary is dekit. #​14169

Changed

  • Dotfile operations you can undo no longer ask for confirmation after showing their plan. This covers dot pull, dot track, undo, rollback, connect and bootstrap --adopt. Destructive ones still ask, such as --replace-history, dot recover --keep-current and implode. --yes and MISE_YES are still accepted. #​14077, #​14071, #​14067
  • Safe mode (MISE_SAFE=1) now ignores a project's [bootstrap], [dotfiles] and [dotfile_groups]. Before, an untrusted repo could link files into $HOME or clone repositories. Global and system config still apply. #​14110
  • Node downloads are checked against the GPG signature for every version that publishes one. Before, only versions starting with 2 were checked. Set node.gpg_verify = false for mirrors without signatures. #​14132
  • mise generate github-action now uses actions/checkout@v7 and jdx/mise-action@v5 and no longer sets MISE_EXPERIMENTAL. mise generate devcontainer now adds "postCreateCommand": "mise install". #​14145

Deprecated

  • task.cache.stats_report, sops.age_recipients and plugin_autoupdate_last_check_duration never had any effect. Setting one now prints a warning, and they will be removed in 2027.10.5. #​14112
  • mise bootstrap launchd|systemd|macos-defaults, the old --only/--skip part names (launchd, systemd, defaults, shell) and mise direnv now print a warning that names the replacement. They will be removed in 2027.10.4. #​14113

Fixed

Tasks
  • A raw or interactive task with cache enabled is now skipped when its sources are fresh and its cache key hasn't changed. Before, it ran every time. #​14121
  • A typo in sources that matches no files now prints a warning. mise tasks deps <task> now shows depends_post tasks. Scripts in $MISE_CONFIG_DIR/tasks load even without a global config file. #​14122
  • mise run ./script resolves relative to the current directory. #​14120
  • Script extensions are stripped only from file task names. #​14159
  • Requests to the remote task cache include the mbx-cache headers. #​14147
  • mise generate task-stubs skips hidden and global tasks. #​14127
Shims and exec
  • Shims, mise x and mise env no longer look up remote versions for lazy tools that aren't installed. With 20 lazy tools and no network, running an installed tool went from about 42s to 0.09s. #​14063
  • On Unix, a system wrapper that execs the same command name can no longer send an unconfigured shim into an endless loop. #​14088
  • Windows lazy shim names now match regardless of letter case. #​14090
  • mise x tool@1.2.3 installs the exact version when the version list times out, instead of failing with "couldn't exec process". #​14164
  • mise doctor recognizes a mise entry in the dedicated shims dir. #​14069
Config, settings and CLI
  • With an environment active and no config.toml yet, mise use -g creates config.toml instead of writing into config.<env>.toml. #​14179
  • Booleans set through mise config set --type bool and boolean settings accept yes/no/1/0. For env.* and other keys that aren't settings, only true and false become booleans, and anything else is stored as written. mise latest tool@prefix:X works, and --log-level warn is accepted. mise doctor prints the full chain when config fails to load. #​14125
  • Help output uses the command name you typed. #​14123
  • mise edit no longer overwrites an existing config when there is no terminal. #​14124
  • .monorepo markers are verified in paranoid mode. #​14105
  • Bad input now gives an error instead of a panic, in places including mise config ls and mise prune with an invalid tool version, the --monorepo flags, and mise plugins uninstall --purge. #​14118, #​14094 (@​JamBalaya56562), #​14103 (@​JamBalaya56562), #​14116, #​14117
  • mise env --redacted honors redact = false exclusions. watch_files hooks don't run in safe mode or with --no-hooks. #​14109, #​14108
  • mise watch passes watchexec flags through to watchexec. #​14115
  • Error and warning hints point at current commands, for example the PATH advice from bootstrap remote and the watchexec install hint. #​14142
  • If stderr can't be written to during a migration, mise no longer aborts. #​14158 (@​JamBalaya56562)
  • When the default cache and temp directories overlap (the Windows default), temp files now go to <temp>/mise-tmp, so mise cache clear no longer deletes files that are still in use. #​14134
Bootstrap and dotfiles
  • mise bootstrap keeps writing the shell activation block into a startup file that is only tracked. #​14135
  • If one package manager fails, the others still run. #​14138
  • The firewall section is skipped on systems that don't support it. #​14137
  • Dry runs show hooks that use exec(). #​14136
  • Pulling onto a machine with no history now saves the files it replaces first, so mise dot undo restores them. --replace-history no longer fails on its first attempt. #​14065
  • mise dot pull says so when incoming history changes no files on this machine. #​14066
Backends and plugins
  • mise install cargo:... no longer uses an inactive cargo-binstall shim. It falls back to native binstall or cargo install. #​14070
  • With npm.shell_out, a mise shim from another data dir can no longer be run as npm and fork until the machine runs out of memory. #​14084 (originally found and fixed by @​tfournet)
  • Java: changing java.shorthand_vendor takes effect without waiting for the cache to expire. Inline java[release_type=ea] is respected when listing and resolving versions. #​14131
  • Ruby precompiled URLs expand {os} and {arch} correctly. #​14133
  • ls-remote respects disable_backends. #​14130
  • SPM uses a custom api_url for cloning and skips lockfile URLs. #​14129
  • GitHub assets are size-checked even when there is no checksum. GitLab release lookups percent-encode the tag. #​14128, #​14102 (@​thespags)
  • Brew infers the formula version from the GitHub release tag path, and detaches a DMG left attached by an interrupted install. #​14165 (@​JamBalaya56562), #​14177
  • git:: plugins install from a subdirectory, and [plugins] entries compare those sources correctly. Packslip entries in [plugins] install as vfox plugins. #​14140, #​14150 (@​onokonem), #​14141
  • vfox: an env plugin with no source no longer makes every command fail. Embedded plugin files are found relative to the manifest directory. #​14119, #​14167
Daemons and sandbox
  • On Windows, deferred daemon commands are quoted for cmd.exe. Argv and Windows readiness probes run in the tool environment. #​14055, #​14080 (@​JamBalaya56562)
  • --deny-env clears inherited variables on Windows. On macOS, allow_net is rejected instead of writing invalid sandbox rules. #​14107, #​14106

Security

  • Remote task cache keys store env, [vars] and task arg values as blake3: digests instead of plaintext, so secret values are no longer uploaded. Existing cache entries miss once after upgrading. #​14104
  • URL credentials are redacted from HTTP debug logs and from npm Git-source and SSH diagnostics. #​14155, #​14057, #​14064

Documentation

  • The documentation site, CLI help and settings descripti

❗ Important

✂ PR body was truncated to here.


Configuration

📅 Schedule: (in timezone America/New_York)

  • Branch creation
    • At any time (no schedule defined)
  • 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.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • 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 October 7, 2026 13:49
@renovate
renovate Bot force-pushed the renovate/support-deps branch from 51bf69e to 4718eed Compare October 7, 2026 17:45
@renovate renovate Bot changed the title chore(deps): update support dependencies to v2.5.0 chore(deps): update support-deps Oct 7, 2026
@renovate
renovate Bot force-pushed the renovate/support-deps branch 3 times, most recently from 6bf3f3c to f3004ce Compare October 9, 2026 11:36
| datasource                 | package                                   | from       | to         |
| -------------------------- | ----------------------------------------- | ---------- | ---------- |
| github-tags                | defenseunicorns/uds-common                | v1.30.1    | v1.31.0    |
| github-tags                | defenseunicorns/uds-core                  | 1.14.0     | 1.14.1     |
| docker                     | ghcr.io/defenseunicorns/packages/uds/core | 1.14.0     | 1.14.1     |
| github-releases            | jdx/hk                                    | 2.4.0      | 2.5.0      |
| github-release-attachments | jdx/mise                                  | v2026.10.3 | v2026.10.6 |
| github-tags                | jdx/mise-action                           | v5.1.0     | v5.1.1     |
@renovate
renovate Bot force-pushed the renovate/support-deps branch from f3004ce to 4c3eb9d Compare October 9, 2026 19:12
@eoghanriley
eoghanriley merged commit a53fb24 into main Oct 9, 2026
32 checks passed
@eoghanriley
eoghanriley deleted the renovate/support-deps branch October 9, 2026 19:28
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