chore(deps): deduplicate and hoist shared devDependencies to root#2182
Merged
markscott-ms merged 1 commit intofinos:mainfrom Feb 26, 2026
Merged
Conversation
Consolidate duplicate dependency definitions across workspace package.json files to prevent renovate/dependabot version conflicts. Key changes: - Hoist typescript, eslint, globals, @typescript-eslint/*, @types/lodash, @types/json-pointer, @types/junit-report-builder, @types/js-yaml, @stoplight/types, axios-mock-adapter, fetch-mock, memfs, msw to root - Align typescript (^5.9.2), eslint (^9.39.2), tsup (^8.4.0) versions - Fix calm-hub-ui: remove stale @types/react v18, move dev tools from dependencies to devDependencies - Remove invalid root dependencies on private workspace packages (@finos/calm-shared, @finos/calm-widgets)
Contributor
There was a problem hiding this comment.
Pull request overview
This PR consolidates and hoists shared devDependencies to the root workspace package to eliminate duplication and version conflicts across the monorepo. The changes align key build tool versions (TypeScript ^5.9.2, ESLint ^9.39.2, tsup ^8.4.0), reorganize calm-hub-ui dependencies to properly separate build tools from runtime dependencies, and remove invalid root-level dependencies on private workspace packages.
Changes:
- Hoisted 15 shared devDependencies from child packages to root (TypeScript, ESLint, globals, testing tools, and type definitions)
- Aligned TypeScript (^5.9.2), ESLint (^9.39.2), and tsup (^8.4.0) versions across all packages
- Fixed calm-hub-ui by moving build tools (@vitejs/plugin-react-swc, vite-plugin-svgr, vite-tsconfig-paths, copyfiles) from dependencies to devDependencies and upgrading
@types/reactfrom v18 to v19 - Removed invalid root-level dependencies on workspace packages (@finos/calm-shared, @finos/calm-widgets)
Reviewed changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| package.json | Added 15 hoisted devDependencies to root; removed invalid workspace package dependencies |
| package-lock.json | Updated lockfile to reflect dependency hoisting and version alignment; marked dependencies as dev |
| shared/package.json | Removed all devDependencies (now hoisted to root) |
| cli/package.json | Removed 9 devDependencies (now hoisted to root); maintained package-specific devDependencies |
| calm-widgets/package.json | Removed all devDependencies (now hoisted to root) |
| calm-plugins/vscode/package.json | Removed 7 devDependencies (now hoisted to root); aligned tsup version to ^8.4.0 |
| calm-models/package.json | Removed 3 devDependencies (now hoisted to root); kept rimraf as package-specific |
| calm-hub-ui/package.json | Moved build tools from dependencies to devDependencies; upgraded @types/react from v18 to v19; removed dependencies now provided by root |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
markscott-ms
approved these changes
Feb 26, 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
We have a lot of duplication and inconsistency in the npm projects, which frequently results in downgrades of dependencies. This PR attempts to resolve those issues and simplify.
Consolidate duplicate dependency definitions across workspace package.json files to prevent renovate/dependabot version conflicts.
Key changes:
@stoplight/types, axios-mock-adapter, fetch-mock, memfs, msw to root
dependencies to devDependencies
Type of Change
Affected Components
cli/)shared/)calm-widgets/)calm-hub/)calm-hub-ui/)docs/)calm-plugins/vscode/)Commit Message Format ✅
Testing
Checklist