Skip to content

Add pnpm package manager support - #942

Merged
ivanovac merged 5 commits into
cloudfoundry:masterfrom
ivanovac:pnpm-support
Sep 30, 2026
Merged

ivanovac merged 5 commits into
cloudfoundry:masterfrom
ivanovac:pnpm-support

Conversation

@ivanovac

@ivanovac ivanovac commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Adds pnpm support to the Node.js buildpack for applications containing pnpm-lock.yaml

Changes

  • Installs the manifest-provided pnpm dependency during staging.
  • Adds pnpm to the buildpack dependency PATH.
  • Runs pnpm install during dependency resolution.
  • Supports online and cached/offline pnpm installs.
  • Adds pnpm cache handling through .pnpm-store.
  • Reports pnpm-specific unmet dependency warnings.
  • Updates pnpm fixtures to lockfile format 9.
  • Adds integration coverage for:
    • Standard pnpm applications
    • Out-of-date lockfiles
    • Unmet dependencies
    • pnpm workspaces
    • Development dependencies
  • Adds the pnpm dependency to manifest.yml

The dependency pipeline and binary-builder changes select and package the correct pnpm-linux-x64.tar.gz release asset as an any-stack dependency.

Testing

Docker integration coverage passed for all four pnpm scenarios on cflinuxfs4

- detect pnpm-lock.yaml and route installs through pnpm
- add pnpm supply wiring and .pnpm-store cache support
- add integration fixtures and tests for simple, dev-deps, and workspace apps
- detect pnpm-lock.yaml and route installs through pnpm
- add pnpm supply wiring and .pnpm-store cache support
- add integration fixtures and tests for simple, dev-deps, and workspace apps

@tnikolova82 tnikolova82 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@ivanovac
ivanovac merged commit b3d829e into cloudfoundry:master Sep 30, 2026
14 of 19 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.

2 participants