fix: migrate pnpm config to pnpm-workspace.yaml and resolve 85 CVEs across 7 packages#3765
fix: migrate pnpm config to pnpm-workspace.yaml and resolve 85 CVEs across 7 packages#3765Luciferxy wants to merge 1 commit into
Conversation
|
|
Hi @Luciferxy, thanks for your interest in contributing! This project requires that pull request authors are vouched, and you are not in the list of vouched users. This PR will be closed automatically. See https://github.com/triggerdotdev/trigger.dev/blob/main/CONTRIBUTING.md for more details. |
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (3)
WalkthroughThis PR updates build and dependency tooling configuration across the monorepo. The turbo devDependency is upgraded from ^1.10.3 to ^2.9.14, and the turbo.json configuration is migrated from the version 1.x Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
| "axios": ">=1.15.2" | ||
| "js-yaml@>=3.0.0 <3.14.2": "3.14.2" | ||
| "js-yaml@>=4.0.0 <4.1.1": "4.1.1" | ||
| "jws@<3.2.3": "3.2.3" | ||
| "qs@>=6.0.0 <6.14.1": "6.14.1" | ||
| "systeminformation@>=5.0.0 <5.31.0": "^5.31.0" | ||
| "lodash@>=4.17 <4.18.0": "^4.18.0" | ||
| "lodash-es@>=4.17 <4.18.0": "^4.18.0" | ||
| "dompurify@>=3 <3.4.0": "^3.4.1" | ||
| "vite@>=5.0.0 <6.4.2": "^6.4.2" | ||
| "rollup@>=4 <4.59.0": "^4.59.0" | ||
| "flatted@>=3 <3.4.2": "^3.4.2" | ||
| "picomatch@>=2 <2.3.2": "^2.3.2" | ||
| "picomatch@>=4 <4.0.4": "^4.0.4" | ||
| "minimatch@>=3 <3.1.3": "^3.1.3" | ||
| "protobufjs": ">=7.5.8" | ||
| "fast-xml-parser@>=4 <4.5.5": "^4.5.5" | ||
| "fast-xml-parser@>=5 <5.7.0": "^5.7.0" | ||
| "path-to-regexp@>=0.1 <0.1.13": "^0.1.13" | ||
| "ajv@>=8 <8.18.0": "^8.18.0" | ||
| "socket.io-parser@>=4 <4.2.6": "^4.2.6" | ||
| "postcss@>=8 <8.5.10": "^8.5.10" | ||
| "yaml@>=2 <2.8.3": "^2.8.3" | ||
| "semver@>=5 <5.7.2": "^5.7.2" | ||
| "defu@>=6 <6.1.5": "^6.1.5" | ||
| "hono": ">=4.12.18" | ||
| "@hono/node-server": ">=1.19.13" | ||
| "mermaid": ">=11.15.0" | ||
| "ws": ">=8.20.1" |
There was a problem hiding this comment.
🚩 Unbounded override specifiers could resolve to future major versions
Several overrides were changed from scoped+capped format (e.g., "axios@>=1.0.0 <1.15.0": "^1.15.0") to unscoped+unbounded format (e.g., "axios": ">=1.15.2"). The >= specifier without an upper bound means that when a new major version of these packages is released (axios 2.x, protobufjs 8.x, hono 5.x, ws 9.x, etc.), a fresh pnpm install could resolve to that breaking major version. The lockfile (pnpm-lock.yaml) currently pins safe versions (e.g., axios@1.16.1), so this is not an immediate issue, but it removes the safety net that ^ provided against major version bumps. This affects: axios, protobufjs, hono, @hono/node-server, mermaid, and ws at pnpm-workspace.yaml:47,62,72-75.
Was this helpful? React with 👍 or 👎 to provide feedback.
Summary
This PR does two things:
package.jsontopnpm-workspace.yaml(required for pnpm v10 compatibility)Problem
Running
pnpm installemitted:This meant three critical config keys were being silently ignored under pnpm v10:
patchedDependencies— 10 package patches were not being appliedonlyBuiltDependencies— lifecycle script permissions for@prisma/engines,better-sqlite3,esbuildwere not being enforcedoverrides— all dependency overrides (including security patches) were inactiveAdditionally,
pnpm auditshowed 386 vulnerabilities before this change.Changes
1. Migrated
pnpm-workspace.yamlMoved the following keys from
package.json→pnpm-workspace.yaml:patchedDependencies(10 patches re-enabled)onlyBuiltDependenciesoverrides(existing + new security overrides)2. Security overrides added
hono>=4.12.18@hono/node-server>=1.19.13protobufjs>=7.5.8mermaid>=11.15.0axios>=1.15.2ws>=8.20.13. Direct dependency bump
turbobumped to^2.9.14in rootpackage.jsonValidation
pnpm installruns cleanly with no warnings. All patches and lifecycle scripts are correctly applied.Remaining vulnerabilities
The following could not be resolved in this PR due to deeper transitive chains or required major framework upgrades:
next— used as a transitive dep insidereact-emailand reference apps; bumping requires testing Next.js 15 compatibility across the monorepoqs/uuid/@kubernetes/client-nodechain — requires upstream@kubernetes/client-nodeto update their locked depslangsmith—references/nextjs-realtimespecific, can be addressed separatelyThese are tracked and can be addressed in follow-up PRs.
Related
Closes #3365