Repository navigation
build: pin pnpm and node with devEngines - #342
Conversation
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. 👍 Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
@codex review |
|
Codex Review: Didn't find any major issues. Keep it up! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
This PR replaces
.nvmrcand thepackageManagerfield withdevEnginesin the rootpackage.json. pnpm 12 reads it and downloads the declared versions (onFail: "download"). The versions are exact: pnpm12.15.0and Node24.22.1. The lockfile records the Node runtime with its checksums. The root package also loses itsenginesfield: the root is private, anddevEngines.runtimepins Node. The published packages keep theirengines.CI and release changes:
pnpm/setup@v3.1.1in place ofpnpm/action-setup,actions/setup-nodeand thepnpm install --frozen-lockfilestep. The action readsdevEngines, installs pnpm and Node, and runs a frozen install (require-lockfile: true).frameworkandsmokejobs setsave-cache: false. They add packages to the store, so each run would save a new cache entry.publishjob does not cache the pnpm store (cacheisfalseby default). The action always restores and saves its small lockfile verification cache, and no input turns this off.release.ymlusespnpm viewin place ofnpm view, because the Node runtime of pnpm has no npm.pnpm viewfetches from the registry on each call, so it needs no--prefer-online. A missing package fails withERR_PNPM_FETCH_404, notE404.Local checks:
actionlint,pnpm lintandpnpm format:checkpass.REVEAL_BROWSERS=chromium pnpm test: 635 tests passed, 28 skipped.pnpm buildandnode scripts/smoke.mjs corepass.pnpm viewlogic finds a published version, gives an emptycurrentfor a missing package, and stops on a registry that it cannot reach.Check after the merge: dependabot-core reads
devEngines.packageManager, but the update of a lockfile with anode@runtime:entry is not verified. Look at the next weekly npm PR.Checklist
nextbranch.!and aBREAKING CHANGE:footer.