Skip to content

Run nvm install in a child shell#26

Closed
mokagio wants to merge 1 commit into
mokagio/nvm-install-timeoutfrom
mokagio/nvm-install-child-shell
Closed

Run nvm install in a child shell#26
mokagio wants to merge 1 commit into
mokagio/nvm-install-timeoutfrom
mokagio/nvm-install-child-shell

Conversation

@mokagio

@mokagio mokagio commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Why

Build 112 (#24 HEAD) shows the Windows explicit-version jobs (v20.19.5, v24.15.0) still hang after Checksums matched!, while the .nvmrc fallback job passes. So #24's PWD normalization fixes the .nvmrc path (the Beeper case) but leaves a residual hang on the explicit-version path.

Build 104 — the stacked #25 — cleared those same Windows jobs in 9s. But #25 bundles the child-shell execution together with timeout/heartbeat/process-tree machinery, so it doesn't isolate the cause.

This PR changes one thing: it runs nvm install in a fresh child bash that re-sources nvm.sh, with none of #25's timeout machinery. If the Windows explicit-version jobs pass here, the child shell — not the timeout — is the fix.

How to test

Watch this branch's Buildkite run. The .nvmrc Windows job should stay green (normalization intact) and both explicit-version Windows jobs should now clear Checksums matched! and finish.

🤖 Generated with Claude Code

Isolate the child-shell execution from PR #25's timeout and heartbeat
machinery to test a single hypothesis: that running `nvm install` in a
fresh child `bash` which re-sources `nvm.sh` is what gets Windows past
the hang after checksum validation — independent of the timeout wrapper.

PR #24's `PWD` normalization is kept; it fixes the `.nvmrc` path (the
Beeper case). This targets the residual explicit-version hang, where
build 112's Windows `v20.19.5`/`v24.15.0` jobs still stall after
`Checksums matched!` while build 104 (child shell) cleared them in 9s.

---

Generated with the help of Claude Code, https://claude.com/claude-code

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings June 30, 2026 06:44
@mokagio mokagio self-assigned this Jun 30, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@mokagio

mokagio commented Jun 30, 2026

Copy link
Copy Markdown
Contributor Author

Closing as a dead end.

This PR isolated the child-shell nvm install change (no timeout/heartbeat machinery) to test whether running the install in a fresh child bash is what gets Windows past the hang. It does not: build 113 hung both explicit-version Windows jobs (v20.19.5, v24.15.0) identically to build 112, while the .nvmrc job stayed green. So the child shell is not the differentiator.

What the comparison did reveal: the last all-green build (104) ran normalization after source nvm.sh, whereas every hanging build (111/112/113) runs it before (commit e00aea8). Next experiment moves on that lead.

Posted by Claude (Opus 4.8, 1M context) on behalf of @mokagio with approval.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants