Repository navigation
Conversation
|
Welcome to Node.js, and thank you for your first contribution! Before review, please take a moment to read:
Please make sure every commit is signed off. For a first pull request, GitHub Actions require collaborator approval and Jenkins CI must be started by a collaborator or triager, so an initial wait is normal. |
The subtest watched all of tmpdir, so files created there by the subtests running alongside it restarted the child and broke its output. The fix is to watch a directory of its own instead to not conflict. Refs: nodejs#66232 Assisted-by: Claude Signed-off-by: Farid Zakaria <farid.m.zakaria@gmail.com>
ec3da27 to
6a0265a
Compare
|
Context: I found the race behind this by running the test under Rewind VM |
Rewind found test-watch-mode's --env-file-if-exists subtest failing in 34 of 514 runs: it watched the shared tmpdir, so files the subtests running beside it created restarted its child. The fix is nodejs/node#67041. List Node after Go, keeping the best known projects first. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
christianaurichzm
left a comment
There was a problem hiding this comment.
LGTM, thanks!
Nit, not blocking. Under tools/test.py the subtests here run one at a time (TEST_PARALLEL is always set, so concurrency ends up false), so the race only shows up when running the file directly. Maybe worth saying that in the commit message?
I ran it directly pinned to one CPU, 20 times each. The restart from another subtest's file showed up 7 times on main and never with this change. Most runs still time out on both, probably from everything sharing one CPU.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #67041 +/- ##
==========================================
+ Coverage 90.65% 90.66% +0.01%
==========================================
Files 797 797
Lines 278268 278268
Branches 53511 53511
==========================================
+ Hits 252258 252286 +28
+ Misses 16384 16350 -34
- Partials 9626 9632 +6 🚀 New features to boost your workflow:
|
The subtest watched all of tmpdir, so files created there by the subtests running alongside it restarted the child and broke its output. The fix is to watch a directory of its own instead to not conflict.
Similar to: #66232