fix(docker): cherry-pick #28519 (restore npm to non_root builder) onto patch/v1.84.1#28973
Conversation
The non_root builder stage installs `nodejs` but not `npm`. Without `npm` on PATH, prisma-python falls back to downloading a Node runtime via nodeenv from nodejs.org, and that downloaded binary fails to load `libatomic.so.1` — breaking `prisma generate` and the image build. `npm` was dropped from this apk list in ca52e34. Restoring it lets prisma-python use the system Node + npm, matching docker/Dockerfile which already installs `npm` for the same reason.
Greptile SummaryCherry-picks the
Confidence Score: 5/5Safe to merge — the change is a single-line addition of The Dockerfile change is minimal and targeted: No files require special attention.
|
| Filename | Overview |
|---|---|
| docker/Dockerfile.non_root | Adds npm alongside nodejs in the builder stage apk add so prisma generate finds npm on PATH instead of falling back to nodeenv/downloading a Node binary that fails on libatomic.so.1. |
| pyproject.toml | Version bumped from 1.84.2 to 1.84.3 in both [project] and [tool.commitizen] sections as expected for a patch release. |
| uv.lock | Lock file updated with new exclude-newer timestamp and litellm version pin synced to 1.84.3. |
Reviews (1): Last reviewed commit: "chore: uv lock after version bump 1.84.2..." | Re-trigger Greptile
Cherry-picks
9e7192e099(fix(docker): restore npm to non_root builder image (#28519)) ontopatch/v1.84.1. Already present onpatch/v1.86.1; missing frompatch/v1.84.1andpatch/v1.85.1. Sibling PR for v1.85.1 will follow.Why this matters on the 1.84 line
The non_root builder stage installs
nodejsbut notnpm. Withoutnpmon PATH,prisma-pythonfalls back to downloading a Node runtime vianodeenvfrom nodejs.org, and the downloaded binary fails to loadlibatomic.so.1— breakingprisma generateand the non_root image build.Diff
docker/Dockerfile.non_root— 2+/1- (single apk add line)pyproject.toml— version bump 1.84.2 → 1.84.3uv.lock— workspace pin syncConflict resolution
Cherry-pick applied cleanly with no conflicts.
Test plan