Pin npm 11.18.0 for Node 20 Docker builds - #7839
Merged
Merged
Conversation
ihaardik
approved these changes
Jul 23, 2026
ar2rsawseen
marked this pull request as ready for review
July 23, 2026 12:32
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
11.18.0in the Debian API/frontend Dockerfiles.Why
The release Dockerfiles used
npm@latestwith Node 20. npm 12 is now the latest major, but it requires Node^22.22.2,^24.15.0, or>=26, so the Docker build fails withEBADENGINE.Pinning npm 10 would avoid that immediate engine error, but the current npm 10 release (
10.9.8) still reports known vulnerabilities in its bundled dependency tree, including the criticalnode-taradvisory. npm11.18.0:^20.17.0 || >=22.9.0;tar@7.5.19;The exact pin also keeps future npm major releases from unexpectedly breaking this release branch.
Validation
git diff --checkdocker buildx build --checkfor all four changed Dockerfilesnpm@11.18.0on the samenode:iron-bookworm-slimbase:v20.20.211.18.0Dockerfile-apibuild completed the base-image Python build and tests, then stopped before npm because this arm64 host cannot install the Dockerfile's hardcoded amd64tinipackage. That architecture mismatch is pre-existing and unrelated to this change.Failure reproduced from: