Upgrade dependencies across the workspace#1818
Merged
Merged
Conversation
Bring all non-major dependencies up to their latest mature versions (respecting the 24h minimumReleaseAge in pnpm-workspace.yaml) across the root, graph-explorer, graph-explorer-proxy-server, and shared packages. Notable bumps: - react/react-dom 19.2.5 -> 19.2.7, @types/react -> 19.2.17 - @tanstack/react-query(+devtools, eslint-plugin) -> 5.101.0 - vite 8.0.9 -> 8.0.16, @vitejs/plugin-react -> 6.0.2 - vitest + @vitest/coverage-v8 4.1.5 -> 4.1.8 (lockstep across all packages) - tailwindcss + @tailwindcss/vite 4.2.4 -> 4.3.0 - zod 4.3.6 -> 4.4.3, jotai 2.19.1 -> 2.20.0, radix-ui 1.4.3 -> 1.5.0 - cytoscape 3.33.2 -> 3.34.0, motion -> 12.40.0, react-router -> 7.17.0 - react-hook-form -> 7.78.0, lucide-react -> 1.17.0, date-fns -> 4.4.0 - @aws-sdk/credential-providers -> 3.1065.0, @types/node -> 24.13.1 - oxfmt 0.47.0 -> 0.54.0 oxlint held at 1.62.0: bumping to 1.69.0 enables new default rules (vitest/require-to-throw-message, two jsx-a11y rules) that flag 26 pre-existing files. Isolating that to its own change to keep this bulk upgrade free of unrelated source edits. @types/node held on the 24.x line to stay aligned with the Node 24 runtime. All checks (lint, format, types), 1778 tests, and production build pass.
Two major-version bumps that require no source changes, both manually verified, combined here with the minor/patch upgrades into a single review. cytoscape-dagre 2.5.0 -> 4.0.0: - Swaps abandoned dagre@0.8.5 for the maintained @dagrejs/dagre@3 fork (bundled into dist in v4) and ships a proper ESM entry, suiting this "type": "module" package. - cytoscape peer dep unchanged (^3.2.22; we are on 3.34) and all layout option names used by our dagre/subway variants are unchanged, so Graph.tsx, layoutConfig.ts, and the cytoscape-dagre.d.ts shim are untouched. All layouts verified visually against a live graph. lint-staged 16.4.0 -> 17.0.7: - v17 breaking changes do not affect us: min Node 22.22.1 (we require >=24.16), min Git 2.32.0, and the now-optional yaml dependency (our config is JSON in root package.json). The .husky/pre-commit hook needs no changes. Checks, 1778 tests, and production build pass.
arseny-kostenko
approved these changes
Jun 11, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Routine dependency maintenance bringing the workspace up to latest mature versions. Dependency-only change — only
package.json(root + 3 packages) andpnpm-lock.yamlare touched; no source code changes.Two logical parts (one commit each):
Minor/patch bumps (~35 across all packages) — React 19.2.5→19.2.7, Vite 8.0.9→8.0.16, Vitest 4.1.5→4.1.8 (lockstep across all packages), Tailwind 4.2.4→4.3.0, Zod 4.3.6→4.4.3, jotai 2.19.1→2.20.0, radix-ui 1.4.3→1.5.0, react-router 7.16→7.17, react-hook-form 7.73→7.78,
@aws-sdk/credential-providers→3.1065.0, oxfmt 0.47→0.54, and others.Two major bumps, neither requiring source changes:
dagre@0.8.5engine for the maintained@dagrejs/dagrefork (bundled intodist/in v4) and ships a proper ESM entry. The cytoscape peer dep is unchanged (^3.2.22; we're on 3.34) and all layout option names we use are unchanged, soGraph.tsx,layoutConfig.ts, and the module shim are untouched.yamldep, while our config is JSON inpackage.json). The pre-commit hook needs no changes.Decisions worth noting for review
@types/nodeheld on the 24.x line (24.13.1) to stay aligned with the Node 24 runtime, rather than moving to 25.minimumReleaseAge(24h) gate:@types/node24.13.1, jotai 2.20.0, aws-sdk 3.1065.0.Validation
pnpm checkspasses (lint, format, types) across all 4 projects.pnpm testpasses — 160 files / 1778 tests on Vitest 4.1.8.pnpm buildproduces a clean production build.Related Issues
Check List
pnpm checkspasses with no errors.pnpm testpasses with no failures.