Skip to content

fix: ignore LOCALAPPDATA outside Windows - #913

Closed
Aschenbath wants to merge 1 commit into
nodejs:mainfrom
Aschenbath:feat/platform-cache-home-673
Closed

Aschenbath wants to merge 1 commit into
nodejs:mainfrom
Aschenbath:feat/platform-cache-home-673

Conversation

@Aschenbath

Copy link
Copy Markdown

When Linux (including WSL) or macOS inherits LOCALAPPDATA, Corepack currently puts its cache there instead of the platform's normal cache directory. This can send WSL downloads to a Windows filesystem and cause permission errors.

Use LOCALAPPDATA only on Windows. Preserve the existing precedence of COREPACK_HOME and XDG_CACHE_HOME, and retain the Windows home-directory fallback. Document the full selection order and add 11 unit cases covering Linux, macOS, Windows, and explicit overrides. The Linux/macOS regression cases fail before the fix.

Validation on Node.js 24.20.0 (Linux):

  • Bundle and shims built successfully.
  • Full Vitest suite with NOCK_ENV=replay and retries disabled: 9 files passed; 182 tests passed and 1 existing expected failure.
  • TypeScript, repository-wide ESLint with --max-warnings=0, and git diff --check passed.

The platform-selection unit tests simulate process.platform. Local test setup isolates inherited proxy settings from CLI fixtures while retaining proxy access for the live npm-key check; compilation caches are stored under .git. No tests were skipped or modified for these environment adjustments.

Closes #673.

Implementation and automated validation were performed by Codex.

@aduh95

aduh95 commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

This account has opened more than 10 PRs in the last 24 hours. This looks like bot activity, and will result in a ban if the behavior continues.

@aduh95 aduh95 closed this Oct 20, 2026
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.

corepack seems to obey LOCALAPPDATA silently

2 participants