Skip to content

chore: pin packageManager to pnpm@10.34.4 - #262

Open
NnamdiCyber wants to merge 1 commit into
wraith-protocol:developfrom
NnamdiCyber:chore/pin-pnpm-version
Open

NnamdiCyber wants to merge 1 commit into
wraith-protocol:developfrom
NnamdiCyber:chore/pin-pnpm-version

Conversation

@NnamdiCyber

Copy link
Copy Markdown

chore: pin packageManager to pnpm@10.34.4

Problem

package.json had no packageManager field, so CI installed a floating pnpm 10 release while the lockfile was created by pnpm 10.34.4. Different pnpm majors can produce different lockfile resolutions, causing drift between local and CI installs.

Changes

  • package.json: added "packageManager": "pnpm@10.34.4" (Corepack resolves this locally).
  • scripts/check-pnpm-version.mjs (new): reads packageManager, compares its major against running pnpm --version, exits non-zero on mismatch. Rejects lockfile edits made with an incompatible pnpm major.
  • .github/workflows/ci.yml: pinned all 10 pnpm/action-setup@v4 version: 10 → 10.34.4; added pnpm run check:pnpm-version after install --frozen-lockfile in the test job.
  • .husky/pre-commit: runs pnpm check:pnpm-version before format/build/test.

Verification

  • package.json parses; check script passes locally (ok: pnpm@10.34.4 matches pnpm@10.34.4).

Closes #240

Add packageManager field to package.json pinning pnpm@10.34.4, the
version that created pnpm-lock.yaml, so local and CI installs use the
same version.

CI pnpm/action-setup pins 10.34.4 instead of floating 10. Add a
check:pnpm-version script (run in CI and pre-commit) that rejects
lockfile updates from an incompatible pnpm major.
@drips-wave

drips-wave Bot commented Oct 17, 2026

Copy link
Copy Markdown

@NnamdiCyber Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@truthixify truthixify 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.

The package-manager pin is incomplete and currently breaks required CI. The examples workflow still configures pnpm/action-setup with version 10 while package.json specifies pnpm@10.34.4, so all eight example jobs fail before install. The main test jobs also fail formatting on scripts/check-pnpm-version.mjs. Update every workflow to use one source of truth (prefer omitting the action version when packageManager is present), format the script, and rerun the required matrix.

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.

[Wave 10] Pin the repository package manager version

2 participants