Skip to content

build(deps): upgrade dependencies to their latest versions - #107

Merged
this-is-tobi merged 2 commits into
mainfrom
build/deps-upgrade
Sep 30, 2026
Merged

this-is-tobi merged 2 commits into
mainfrom
build/deps-upgrade

Conversation

@this-is-tobi

Copy link
Copy Markdown
Owner

Summary

Upgrade every dependency to its latest version, including majors.

Area Changes
Runtime majors mermaid 12, simple-git 4
Dev majors vitest + @vitest/coverage-v8 5
Minor / patch zod, yaml, eslint, vite, vue, @vitejs/plugin-vue, @types/node, @commitlint/*
Overrides Latest patched release within the major the dependents require; new lodash-es ^4.18.1 override
Toolchain (mise.toml) pnpm 12.7.0; node stays on the 24 LTS line (24.21.0, already latest); bun 1.4.2 is already latest
GitHub Actions actions/checkout 7, actions/cache 6

Mermaid 12 label clipping fix

Mermaid 12 sizes its HTML labels at a 1.5 line-height (21px), but VitePress styles the <p> they render in with a 28px line-height and margins, so multi-line node and edge labels were clipped. public/templates/theme/mermaid.css resets both inside mermaid labels (picked up by the theme's CSS glob).

Renovate

  • minimumReleaseAge: 3 days before proposing a release.
  • Major updates of overrides are disabled: they pin patched versions of transitive dependencies, and bumping their major forces a version the dependents never asked for (e.g. nanoid 6 under postcss, which requires 3).

Security check

  • Everything resolved with bun's --minimum-release-age set to 3 days, so releases younger than that were skipped (vitest 5.0.3 → 5.0.2, pnpm 12.8.x → 12.7.0).
  • bun audit: 9 → 4 vulnerabilities. mermaid 12 pulled in lodash-es 4.17.23 (pinned exactly by chevrotain), fixed by the new override.
  • The 4 left all come from vite 5 / esbuild 0.21 inside vitepress 1.6.4, the latest stable release, and only affect the dev server.
  • New transitive packages come from ESLint's cache layer (file-entry-cache → cacheable family), mermaid 12 (chevrotain, elkjs) and vitest. Known maintainers, mostly published with npm provenance, and none run install scripts.

Verification

  • Typecheck, lint, unit tests (384) with coverage, and build pass.
  • End-to-end CLI build of homelab and docpress succeeds.
  • Consumer-install tests (npm, pnpm 12, bun) pass on Node 24.21.0.
  • All mermaid diagrams on the homelab pages checked in a browser: they render, with no clipped labels. One diagram in homelab/projects fails to parse, the same way on main with mermaid 11 (unquoted ( inside a [...] label in the homelab docs).

Notes

  • Diagrams look different: ELK is mermaid 12's default layout instead of dagre, so docpress sites lay out flowcharts differently. The previous look is one layout: 'dagre' mermaid option away if preferred.
  • Not upgraded: typescript 7 (typescript-eslint still requires <6.1.0), vitepress 2 (alpha only).
  • package.json overrides only apply to this repository's installs (including the Docker image), not to npm consumers of docpress.
  • pnpm 12 refuses to run inside this repository (packageManager is bun) and, in the consumer-install test, pnpm init pins and downloads its own latest release for the scratch project.

Majors: mermaid 12, simple-git 4, vitest and @vitest/coverage-v8 5, pnpm 12, actions/checkout 7
and actions/cache 6. Overrides move to the latest patched release of the major their dependents
require, and lodash-es is overridden to 4.18.1 as chevrotain (from mermaid 12) pins the
vulnerable 4.17.23. Node stays on the 24 LTS line.

Mermaid 12 sizes its HTML labels at a 1.5 line-height while VitePress styles the <p> they
render in with a 28px line-height and margins, clipping multi-line labels. The theme now
resets both inside mermaid labels.
Overrides pin patched versions of transitive dependencies, so bumping their major forces
a version the dependents never asked for (e.g. nanoid 6 under postcss, which needs 3).
@github-actions

Copy link
Copy Markdown
Contributor

🤖 Hey !

✅ Gitleaks found no leaked secrets in the git history. The secret scan report for the current pull request is available in the GitHub Security Tab.

@github-actions

Copy link
Copy Markdown
Contributor

🤖 Hey !

The security scan report for the current pull request is available in the GitHub Security Tab.

@this-is-tobi
this-is-tobi merged commit 8a6c997 into main Sep 30, 2026
24 checks passed
@this-is-tobi
this-is-tobi deleted the build/deps-upgrade branch September 30, 2026 20:00
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