Skip to content

[BUG] Platform-specific optional dependencies not being included in package-lock.json #8320

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
2 tasks done
kusyka911 opened this issue May 22, 2025 · 2 comments
Closed
2 tasks done
Labels
Bug thing that needs fixing Needs Triage needs review for next steps

Comments

@kusyka911
Copy link

kusyka911 commented May 22, 2025

Is there an existing issue for this?

  • I have searched the existing issues

This issue exists in the latest npm version

  • I am using the latest npm

Current Behavior

Most likely related to #4828

Tried with:

None is updating package-lock with platform specific dependencies.
Can't do update on local machine because my laptop is arm64 darwin, have to run a x86_64 VM or drop package-lock on CI.

Here is log from one of my CI runs.

Error: Cannot find module @rollup/rollup-linux-x64-gnu. npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). Please try `npm i` again after removing both package-lock.json and node_modules directory.
    at requireWithFriendlyError (/home/runner/work/***/rollup/dist/native.js:64:9)
    at Object.<anonymous> (/home/runner/work/***/node_modules/rollup/dist/native.js:73:76)
    at Module._compile (node:internal/modules/cjs/loader:1562:14)
    at Object..js (node:internal/modules/cjs/loader:1699:10)
    at Module.load (node:internal/modules/cjs/loader:1313:32)
    at Function._load (node:internal/modules/cjs/loader:1123:12)
    at TracingChannel.traceSync (node:diagnostics_channel:322:14)
    at wrapModuleLoad (node:internal/modules/cjs/loader:217:24)
    at cjsLoader (node:internal/modules/esm/translators:263:5)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:1[96](https://github.com/***/actions/runs/15192969231/job/42730156384#step:7:97):7)
npm error Lifecycle script `build` failed with error:
npm error code 1
npm error path /home/runner/work/***/extensions/preview
npm error workspace [email protected]
npm error location /home/runner/work/***/extensions/preview
npm error command failed
npm error command sh -c vite build

Expected Behavior

package-lock successfully updated with platform specific dependencies when npm ci or npm install runs in CI environment.

Steps To Reproduce

  1. App with "vite@^5.3.4" + package-lock.json generated on arm64.
  2. Build app in CI environment like github actions

Environment

//npm.pkg.github.com/:_authToken = (protected)
//registry.npmjs.org/:_authToken = (protected)
auto-install-peers = true
enable-pre-post-scripts = true
engine-strict = true
shamefully-hoist = true
@kusyka911 kusyka911 added Bug thing that needs fixing Needs Triage needs review for next steps labels May 22, 2025
@kchindam-infy
Copy link

Hi @kusyka911 this looks to be similar if not a duplicate of an existing issue #7961, #7543, #7750 you believe your instance is unique, please provide further clarifying details.

@kusyka911
Copy link
Author

@kchindam-infy Sorry, it's probably my mistake. I've just made fresh installation of all dependencies with [email protected] and it looks like everything is good for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug thing that needs fixing Needs Triage needs review for next steps
Projects
None yet
Development

No branches or pull requests

2 participants