Skip to content

fix(docker): cherry-pick #28519 (restore npm to non_root builder) onto patch/v1.85.1#28974

Merged
yuneng-berri merged 1 commit into
patch/v1.85.1from
litellm_yj/cherry-pick-npm-fix-v1.85.1
May 27, 2026
Merged

fix(docker): cherry-pick #28519 (restore npm to non_root builder) onto patch/v1.85.1#28974
yuneng-berri merged 1 commit into
patch/v1.85.1from
litellm_yj/cherry-pick-npm-fix-v1.85.1

Conversation

@yuneng-berri

@yuneng-berri yuneng-berri commented May 27, 2026

Copy link
Copy Markdown
Collaborator

Cherry-picks 9e7192e099 (fix(docker): restore npm to non_root builder image (#28519)) onto patch/v1.85.1. Already present on patch/v1.86.1; missing from patch/v1.84.1 and patch/v1.85.1. Sibling PR for v1.84.1: #28973.

Why this matters on the 1.85 line

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 the downloaded binary fails to load libatomic.so.1 — breaking prisma generate and the non_root image build.

Diff

  • docker/Dockerfile.non_root — 2+/1- (single apk add line). No version bump, no lockfile change.

Conflict resolution

Cherry-pick applied cleanly with no conflicts.

Test plan

  • CI builds the non_root image without falling back to nodeenv

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.
@yuneng-berri yuneng-berri force-pushed the litellm_yj/cherry-pick-npm-fix-v1.85.1 branch from a71db0e to 7e031bf Compare May 27, 2026 07:52
@greptile-apps

greptile-apps Bot commented May 27, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This cherry-pick adds npm to the builder stage's apk add command in Dockerfile.non_root, preventing prisma-python from falling back to nodeenv and failing with a missing libatomic.so.1 error. It also bumps the patch version to 1.85.3 and syncs the lock file.

  • docker/Dockerfile.non_root: npm added alongside nodejs in the builder stage (line 28); the runtime stage is unchanged and unaffected because it sets PRISMA_OFFLINE_MODE=true and uses the binary cached by the builder.
  • pyproject.toml / uv.lock: Version bumped 1.85.2 → 1.85.3 with corresponding lock-file sync; the exclude-newer timestamp in uv.lock advances ~27 minutes on the same day, which is a routine artifact of re-running uv lock.

Confidence Score: 5/5

Safe to merge — the change is a minimal, targeted one-line fix to the builder stage with no impact on the runtime image or application logic.

The only functional change is adding npm to the builder stage's package list, which directly fixes the documented prisma generate failure. The runtime stage is intentionally left without npm and is protected by PRISMA_OFFLINE_MODE=true and the pre-cached binary from the builder. The version bump and lock-file sync are routine and consistent with each other.

No files require special attention.

Important Files Changed

Filename Overview
docker/Dockerfile.non_root Adds npm to the builder stage's apk add command alongside the existing nodejs, fixing prisma generate failures caused by the nodeenv fallback.
pyproject.toml Version bump from 1.85.2 → 1.85.3 in both the [project] and [tool.commitizen] sections.
uv.lock Workspace pin sync for the version bump; exclude-newer timestamp advanced ~27 minutes on the same day (no new packages expected in that window).

Reviews (1): Last reviewed commit: "fix(docker): restore npm to non_root bui..." | Re-trigger Greptile

@yuneng-berri yuneng-berri merged commit 2f3f558 into patch/v1.85.1 May 27, 2026
20 of 48 checks passed
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.

1 participant