Repository navigation
Remove vulnerable nodemon dependency - #910
Aamir Jawaid (heyitsaamir) wants to merge 2 commits into
Conversation
Drop the tab example's nodemon dev dependency because latest nodemon still pulls chokidar 3 and vulnerable braces, and no patched braces 3.x is published. Use the existing tsx watch pattern instead and regenerate the npm lockfile so npm audit passes.\n\nCo-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Warning
Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.
Copilot review overview
Review effort: Lite
Findings: 2
Open (3)
What changed in this PR
Removes the nodemon dependency from the tab example to eliminate an unpatched vulnerable dependency chain and switches the dev workflow to use tsx watch instead.
Changes:
- Replaced the tab example
devscript fromnodemontotsx watch(while still building client assets first) - Removed
nodemonfromdevDependencies - Deleted the now-unused
nodemon.jsonconfiguration
| File | Description |
|---|---|
| examples/tab/package.json | Updates dev script to use tsx watch and removes nodemon dependency. |
| examples/tab/nodemon.json | Removes nodemon configuration file since nodemon is no longer used. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
1. 2. The new script stops rebuilding the client.
It builds it once and then never again. The old Confirmed this against
Those examples are server-only, which is why 3. Rebase onto Worth saying the direction is right: |
…-fixes-947 # Conflicts: # examples/tab/package.json # package-lock.json Co-authored-by: corinagum <14900841+corinagum@users.noreply.github.com>
All three are addressed in 7984d41:
|


Summary
This clears the current
npm auditfindings without taking npm's suggested downgrade tonodemon@1.14.10. The vulnerable path isnodemon -> chokidar@3 -> braces@3.0.3, and latestnodemonstill depends on thatchokidarmajor while no patchedbraces3.x exists.Decisions
npm audit fix --forcewould install an older major ofnodemon, so this PR avoids that downgrade and drops the only directnodemondependency.tsx watch; the tab example now follows that pattern instead of keeping a separatenodemonconfig.Implementation details
nodemon,chokidar@3, orbracesdependency chain.Sequence diagram
sequenceDiagram participant Dev as Developer participant Npm as npm scripts participant Vite as Vite build participant Tsx as tsx watch Dev->>Npm: npm run dev --workspace @examples/tab Npm->>Vite: build tab client assets Vite-->>Npm: dist/client ready Npm->>Tsx: watch src/index.ts with dotenv Tsx-->>Dev: restarts server on source changesValidation
npm audit --audit-level=highreportsfound 0 vulnerabilities.npx turbo build --filter=@examples/tab...passes.