Skip to content

1. Adoption of Renovate for Dependency Management

Date: 2026-01-16

Status

Accepted

Context

The dotfiles repository relies on a large number of external tools managed via mise.toml (40+ tools), Brewfile, and system packages. Historically, these versions were pinned to "latest" or manual fixed versions without any automated way to track updates. This led to: 1. Stale tools. 2. Manual toil to check for updates (mise check-outdated was manual). 3. Risk of breakage when updating everything at once.

Decision

We have decided to adopt Renovate Bot for automated dependency management.

Consequences

Positive

  • Automation: PRs are generated automatically when tools release new versions.
  • Granularity: Updates are atomic (per tool) or grouped (per category), making it easier to identify what broke.
  • Verification: CI runs on every update PR, ensuring tests pass before merging.
  • Visibility: The "Dependency Dashboard" issue provides a clear view of pending updates.

Negative

  • Noise: Potential for high volume of PRs (mitigated by "weekend only" schedule and grouping).
  • Maintenance: Requires valid renovate.json configuration.

Implementation Details

  • Configuration: .github/renovate.json
  • Schedule: Weekly (Weekends)
  • Grouping: All mise tools are grouped into a single weekly PR to reduce noise.
  • Automerge: Patch updates for core runtimes are automerged if CI passes.