From cf8555bd1235d6f037c59c86db8e921cceec2475 Mon Sep 17 00:00:00 2001 From: Zoltan Kochan Date: Mon, 16 Mar 2026 01:06:54 +0100 Subject: [PATCH 1/2] feat: read pnpm version from devEngines.packageManager field When no version is specified in the action config or the packageManager field of package.json, fall back to devEngines.packageManager. Co-Authored-By: Claude Opus 4.6 --- dist/index.js | Bin 1427908 -> 1428109 bytes src/install-pnpm/run.ts | 16 ++++++++++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/dist/index.js b/dist/index.js index 885a0c2fab92195032967742fa2eade0516baac2..73fbf803e6419f0ab32c99107e675330c3c68436 100644 GIT binary patch delta 363 zcmX>yIlOmjctZYJDcB#U&4fkG*%Wv+SYnR%(jwaJMk$r&2?(`EOF zs@CUg*3>9!C?)5oq$*|RDS){7dLW*nt*w%)pTDbLh>~VWMp1sbLVhjKO(m5DsrhLN znTobb#U(|VdFe`OYQ^?wHrnguCFZ8u0!=8$E64?@KvSSsmReMtnV+Yot)`J_n*dVf spi+%XRc(T%PO4`0^ap!Ib+#|uBbvoD{pvnZb#8>8^tS)mCwhVl0KNEtssI20 delta 214 zcmeC38h&JQctZ>=rc?vDT!Pqk7ssMWOc3ikKYD@ZIVPSq&Z)T~WTEJ@DLD4wpjM^x3gShJ=^Q9~&?KP6Qu zGfx4;E!G3^6m4ylT>boA{X OEQY`%N2@ifsRPkte*Zplu>kg?LJZQ?V5W { From 949c415272d0b4d7229614f5c844ada29ffe1a05 Mon Sep 17 00:00:00 2001 From: Zoltan Kochan Date: Fri, 27 Mar 2026 01:58:33 +0100 Subject: [PATCH 2/2] feat: skip self-update for devEngines.packageManager and add CI tests pnpm auto-switches to the right version when devEngines.packageManager is set, so self-update is unnecessary. This also enables range support (e.g. ">=9.15.0") which self-update doesn't handle. --- .github/workflows/test.yaml | 33 ++++ dist/index.js | Bin 1428109 -> 1431925 bytes src/install-pnpm/bootstrap/exe-lock.json | 229 +++++++++++++++++----- src/install-pnpm/bootstrap/pnpm-lock.json | 16 +- src/install-pnpm/run.ts | 33 +++- 5 files changed, 249 insertions(+), 62 deletions(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 5086b82..b5bbd91 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -108,6 +108,39 @@ jobs: pnpm add is-odd shell: bash + test_dev_engines: + name: Test with devEngines.packageManager + + runs-on: ${{ matrix.os }} + + strategy: + fail-fast: false + matrix: + os: + - ubuntu-latest + - macos-latest + - windows-latest + version: + - '9.15.5' + - '>=9.15.0' + + steps: + - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 + + - name: Set up package.json with devEngines.packageManager + run: echo '{"devEngines":{"packageManager":{"name":"pnpm","version":"${{ matrix.version }}","onFail":"download"}}}' > package.json + shell: bash + + - name: Run the action + uses: ./ + + - name: 'Test: which' + run: which pnpm; which pnpx + + - name: 'Test: version' + run: pnpm --version + shell: bash + test_run_install: name: 'Test with run_install (${{ matrix.run_install.name }}, ${{ matrix.os }})' diff --git a/dist/index.js b/dist/index.js index 73fbf803e6419f0ab32c99107e675330c3c68436..598c7963a494aa8409623ed372eec9916a60b9ef 100644 GIT binary patch delta 60185 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 B{?-5h diff --git a/src/install-pnpm/bootstrap/exe-lock.json b/src/install-pnpm/bootstrap/exe-lock.json index c660a11..beb363f 100644 --- a/src/install-pnpm/bootstrap/exe-lock.json +++ b/src/install-pnpm/bootstrap/exe-lock.json @@ -5,34 +5,40 @@ "packages": { "": { "dependencies": { - "@pnpm/exe": "10.32.1" + "@pnpm/exe": "11.0.0-beta.3" } }, "node_modules/@pnpm/exe": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@pnpm/exe/-/exe-10.32.1.tgz", - "integrity": "sha512-baEtwHeZwmZAdBuuDDL6tbdGg5KpxhPxr3QFfYTGXvY6ws+Z1bN0mQ7ZjcaXBSC1HuLpVXnZ6NsBiaZ2DMv4vg==", + "version": "11.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@pnpm/exe/-/exe-11.0.0-beta.3.tgz", + "integrity": "sha512-yWNlHHdYmvf4c0MCkCzAa4csJDPdA+7yJCbXBUDXMbUu/0Zv/AxtO77q24MwlnBUC0dWeA+0F/pPmdkR9aTV2A==", "hasInstallScript": true, "license": "MIT", + "dependencies": { + "@reflink/reflink": "0.1.19" + }, "bin": { - "pnpm": "pnpm" + "pn": "pn", + "pnpm": "pnpm", + "pnpx": "pnpx", + "pnx": "pnx" }, "funding": { "url": "https://opencollective.com/pnpm" }, "optionalDependencies": { - "@pnpm/linux-arm64": "10.32.1", - "@pnpm/linux-x64": "10.32.1", - "@pnpm/macos-arm64": "10.32.1", - "@pnpm/macos-x64": "10.32.1", - "@pnpm/win-arm64": "10.32.1", - "@pnpm/win-x64": "10.32.1" + "@pnpm/linux-arm64": "11.0.0-beta.3", + "@pnpm/linux-x64": "11.0.0-beta.3", + "@pnpm/macos-arm64": "11.0.0-beta.3", + "@pnpm/macos-x64": "11.0.0-beta.3", + "@pnpm/win-arm64": "11.0.0-beta.3", + "@pnpm/win-x64": "11.0.0-beta.3" } }, "node_modules/@pnpm/linux-arm64": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@pnpm/linux-arm64/-/linux-arm64-10.32.1.tgz", - "integrity": "sha512-6uB0B+XvunQwHGzIMk2JCkl4Ur6BtM4XbJSwB/mgpWmXDoX/KTJmgx2lodcTjgJSGSySCHfIVuTR9sj/F2D4EA==", + "version": "11.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@pnpm/linux-arm64/-/linux-arm64-11.0.0-beta.3.tgz", + "integrity": "sha512-TF2fyuCY9GggR4kfhjo1hMmgn+rIohenwNoH0tLPM7JlBK7/UAIFt1LI+o999tRwTCEw7gnxHFwtI2vyQuDfNw==", "cpu": [ "arm64" ], @@ -41,17 +47,14 @@ "os": [ "linux" ], - "bin": { - "pnpm": "pnpm" - }, "funding": { "url": "https://opencollective.com/pnpm" } }, "node_modules/@pnpm/linux-x64": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@pnpm/linux-x64/-/linux-x64-10.32.1.tgz", - "integrity": "sha512-AM2tv23Fg7h+nV+adqA/SkZKUysSIEetHfBwYFl8ArgdgkqbGoQy0rAOdKYQBb920CqfexXfI8OA8kPCzRxYng==", + "version": "11.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@pnpm/linux-x64/-/linux-x64-11.0.0-beta.3.tgz", + "integrity": "sha512-7GrLsnSuDH62y486GUTwJdohGIC1ugz9ZJkbKOHgxIAkNGcSTJ1IkkdARtv7/WMmOEwwESDmtpOQ6LmjnpDMSA==", "cpu": [ "x64" ], @@ -60,17 +63,14 @@ "os": [ "linux" ], - "bin": { - "pnpm": "pnpm" - }, "funding": { "url": "https://opencollective.com/pnpm" } }, "node_modules/@pnpm/macos-arm64": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@pnpm/macos-arm64/-/macos-arm64-10.32.1.tgz", - "integrity": "sha512-Zr4JkhRbtGVsYgbuGZO0dq/6FPOn072Pdo0ubmqWtc14cUATKgAJD7efG03yqr3MLgtwFHgdtUzZ1WsaYAtUTA==", + "version": "11.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@pnpm/macos-arm64/-/macos-arm64-11.0.0-beta.3.tgz", + "integrity": "sha512-NQKgI1DURrEiOUzpxL0Mc+yn7DV4tpShqGnjaJLbz8ZCXsX/qhmybebvCG3r+IfSk3P5KID66lcgC/Osiaz0Dg==", "cpu": [ "arm64" ], @@ -79,17 +79,14 @@ "os": [ "darwin" ], - "bin": { - "pnpm": "pnpm" - }, "funding": { "url": "https://opencollective.com/pnpm" } }, "node_modules/@pnpm/macos-x64": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@pnpm/macos-x64/-/macos-x64-10.32.1.tgz", - "integrity": "sha512-Yk6q3oFDu//OniXJxfTSHo+aew1LX81FcbzJAtEkcCeTQ0SLbQT6J3QiOMNikp8n8IjNhsy+bn2bdkUxaw+akA==", + "version": "11.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@pnpm/macos-x64/-/macos-x64-11.0.0-beta.3.tgz", + "integrity": "sha512-Ky22KFYHXx8+8WU4KJT9NXVgzFioL2w9pHTQjsqTK70AbxiErscPYhrFIehlCNbXjgs+tGVIy13QNKkiwvmS8w==", "cpu": [ "x64" ], @@ -98,17 +95,14 @@ "os": [ "darwin" ], - "bin": { - "pnpm": "pnpm" - }, "funding": { "url": "https://opencollective.com/pnpm" } }, "node_modules/@pnpm/win-arm64": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@pnpm/win-arm64/-/win-arm64-10.32.1.tgz", - "integrity": "sha512-P8rsP5IUetpYjr2iwggoswL2qUukYrJoToXWuMyo8immn58CsYxaXsHVQ1Oq1R3XMfmGGWTXLsiJuQ7H991MRg==", + "version": "11.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@pnpm/win-arm64/-/win-arm64-11.0.0-beta.3.tgz", + "integrity": "sha512-7L8TFNDm25m+XYSyhcola3YFd/li6BZzzl56SsyGnZabsvUslMwnDiJad48wOz8IuN7zsrTSGh+X/x6F+GdrFQ==", "cpu": [ "arm64" ], @@ -117,17 +111,14 @@ "os": [ "win32" ], - "bin": { - "pnpm": "pnpm.exe" - }, "funding": { "url": "https://opencollective.com/pnpm" } }, "node_modules/@pnpm/win-x64": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@pnpm/win-x64/-/win-x64-10.32.1.tgz", - "integrity": "sha512-i24GwbtBO8ojrhp8WWimX7NgZs0UKH1171oRt6qcRL+a+FxE0Eggv2y0KP7ZI7F3+LZMarwr3tnYsZryfciUOg==", + "version": "11.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@pnpm/win-x64/-/win-x64-11.0.0-beta.3.tgz", + "integrity": "sha512-Z/6OpMUaIpggXjCtWEhp6kWjiT/2EImhkJAu8AodOORqeNcWouGEq3sO4XU0em6d+pAHmdV0hWMQ2xCUmPVuiA==", "cpu": [ "x64" ], @@ -136,12 +127,156 @@ "os": [ "win32" ], - "bin": { - "pnpm": "pnpm.exe" - }, "funding": { "url": "https://opencollective.com/pnpm" } + }, + "node_modules/@reflink/reflink": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@reflink/reflink/-/reflink-0.1.19.tgz", + "integrity": "sha512-DmCG8GzysnCZ15bres3N5AHCmwBwYgp0As6xjhQ47rAUTUXxJiK+lLUxaGsX3hd/30qUpVElh05PbGuxRPgJwA==", + "license": "MIT", + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@reflink/reflink-darwin-arm64": "0.1.19", + "@reflink/reflink-darwin-x64": "0.1.19", + "@reflink/reflink-linux-arm64-gnu": "0.1.19", + "@reflink/reflink-linux-arm64-musl": "0.1.19", + "@reflink/reflink-linux-x64-gnu": "0.1.19", + "@reflink/reflink-linux-x64-musl": "0.1.19", + "@reflink/reflink-win32-arm64-msvc": "0.1.19", + "@reflink/reflink-win32-x64-msvc": "0.1.19" + } + }, + "node_modules/@reflink/reflink-darwin-arm64": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@reflink/reflink-darwin-arm64/-/reflink-darwin-arm64-0.1.19.tgz", + "integrity": "sha512-ruy44Lpepdk1FqDz38vExBY/PVUsjxZA+chd9wozjUH9JjuDT/HEaQYA6wYN9mf041l0yLVar6BCZuWABJvHSA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@reflink/reflink-darwin-x64": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@reflink/reflink-darwin-x64/-/reflink-darwin-x64-0.1.19.tgz", + "integrity": "sha512-By85MSWrMZa+c26TcnAy8SDk0sTUkYlNnwknSchkhHpGXOtjNDUOxJE9oByBnGbeuIE1PiQsxDG3Ud+IVV9yuA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@reflink/reflink-linux-arm64-gnu": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@reflink/reflink-linux-arm64-gnu/-/reflink-linux-arm64-gnu-0.1.19.tgz", + "integrity": "sha512-7P+er8+rP9iNeN+bfmccM4hTAaLP6PQJPKWSA4iSk2bNvo6KU6RyPgYeHxXmzNKzPVRcypZQTpFgstHam6maVg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@reflink/reflink-linux-arm64-musl": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@reflink/reflink-linux-arm64-musl/-/reflink-linux-arm64-musl-0.1.19.tgz", + "integrity": "sha512-37iO/Dp6m5DDaC2sf3zPtx/hl9FV3Xze4xoYidrxxS9bgP3S8ALroxRK6xBG/1TtfXKTvolvp+IjrUU6ujIGmA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@reflink/reflink-linux-x64-gnu": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@reflink/reflink-linux-x64-gnu/-/reflink-linux-x64-gnu-0.1.19.tgz", + "integrity": "sha512-jbI8jvuYCaA3MVUdu8vLoLAFqC+iNMpiSuLbxlAgg7x3K5bsS8nOpTRnkLF7vISJ+rVR8W+7ThXlXlUQ93ulkw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@reflink/reflink-linux-x64-musl": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@reflink/reflink-linux-x64-musl/-/reflink-linux-x64-musl-0.1.19.tgz", + "integrity": "sha512-e9FBWDe+lv7QKAwtKOt6A2W/fyy/aEEfr0g6j/hWzvQcrzHCsz07BNQYlNOjTfeytrtLU7k449H1PI95jA4OjQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@reflink/reflink-win32-arm64-msvc": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@reflink/reflink-win32-arm64-msvc/-/reflink-win32-arm64-msvc-0.1.19.tgz", + "integrity": "sha512-09PxnVIQcd+UOn4WAW73WU6PXL7DwGS6wPlkMhMg2zlHHG65F3vHepOw06HFCq+N42qkaNAc8AKIabWvtk6cIQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@reflink/reflink-win32-x64-msvc": { + "version": "0.1.19", + "resolved": "https://registry.npmjs.org/@reflink/reflink-win32-x64-msvc/-/reflink-win32-x64-msvc-0.1.19.tgz", + "integrity": "sha512-E//yT4ni2SyhwP8JRjVGWr3cbnhWDiPLgnQ66qqaanjjnMiu3O/2tjCPQXlcGc/DEYofpDc9fvhv6tALQsMV9w==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } } } } diff --git a/src/install-pnpm/bootstrap/pnpm-lock.json b/src/install-pnpm/bootstrap/pnpm-lock.json index df0f571..0fd63ad 100644 --- a/src/install-pnpm/bootstrap/pnpm-lock.json +++ b/src/install-pnpm/bootstrap/pnpm-lock.json @@ -5,20 +5,22 @@ "packages": { "": { "dependencies": { - "pnpm": "latest" + "pnpm": "11.0.0-beta.3" } }, "node_modules/pnpm": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/pnpm/-/pnpm-10.32.1.tgz", - "integrity": "sha512-pwaTjw6JrBRWtlY+q07fHR+vM2jRGR/FxZeQ6W3JGORFarLmfWE94QQ9LoyB+HMD5rQNT/7KnfFe8a1Wc0jyvg==", + "version": "11.0.0-beta.3", + "resolved": "https://registry.npmjs.org/pnpm/-/pnpm-11.0.0-beta.3.tgz", + "integrity": "sha512-6PrfRjycZV4vRX6ttG9oR6pOgbI2/OcF2QLOzHm35UcRuvtqP4zf3wQfAAPwEbeu1uAbpSg/Q5cL8h32tumy6Q==", "license": "MIT", "bin": { - "pnpm": "bin/pnpm.cjs", - "pnpx": "bin/pnpx.cjs" + "pn": "bin/pnpm.mjs", + "pnpm": "bin/pnpm.mjs", + "pnpx": "bin/pnpx.mjs", + "pnx": "bin/pnpx.mjs" }, "engines": { - "node": ">=18.12" + "node": ">=22.13" }, "funding": { "url": "https://opencollective.com/pnpm" diff --git a/src/install-pnpm/run.ts b/src/install-pnpm/run.ts index 4221555..73b16e2 100644 --- a/src/install-pnpm/run.ts +++ b/src/install-pnpm/run.ts @@ -13,7 +13,12 @@ const BOOTSTRAP_PNPM_PACKAGE_JSON = JSON.stringify({ private: true, dependencies const BOOTSTRAP_EXE_PACKAGE_JSON = JSON.stringify({ private: true, dependencies: { '@pnpm/exe': exeLock.packages['node_modules/@pnpm/exe'].version } }) export async function runSelfInstaller(inputs: Inputs): Promise { - const { version, dest, packageJsonFile, standalone } = inputs + const { version, dest, packageJsonFile } = inputs + + // pnpm v11 requires Node >= 22; use standalone (exe) bootstrap which + // bundles its own Node.js when the system Node is too old + const systemNodeVersion = await getSystemNodeVersion() + const standalone = inputs.standalone || systemNodeVersion < 22 // Install bootstrap pnpm via npm (integrity verified by committed lockfile) await rm(dest, { recursive: true, force: true }) @@ -87,11 +92,6 @@ function readTargetVersion(opts: { } } - // If packageManager field is not set, try devEngines.packageManager - if (typeof packageManager !== 'string' && devEngines?.packageManager?.name === 'pnpm' && devEngines.packageManager.version) { - packageManager = `pnpm@${devEngines.packageManager.version}` - } - if (version) { if ( typeof packageManager === 'string' && @@ -107,9 +107,13 @@ Remove one of these versions to avoid version mismatch errors like ERR_PNPM_BAD_ return version } + // pnpm will automatically download and switch to the right version if (typeof packageManager === 'string' && packageManager.startsWith('pnpm@')) { - // Strip the "pnpm@" prefix and any "+sha..." hash suffix - return packageManager.replace('pnpm@', '').replace(/\+.*$/, '') + return undefined + } + + if (devEngines?.packageManager?.name === 'pnpm' && devEngines.packageManager.version) { + return undefined } if (!GITHUB_WORKSPACE) { @@ -126,6 +130,19 @@ Please specify it by one of the following ways: - in the package.json with the key "devEngines.packageManager"`) } +function getSystemNodeVersion(): Promise { + return new Promise((resolve) => { + const cp = spawn('node', ['--version'], { stdio: ['pipe', 'pipe', 'pipe'], shell: process.platform === 'win32' }) + let output = '' + cp.stdout.on('data', (data: Buffer) => { output += data.toString() }) + cp.on('close', () => { + const match = output.match(/^v(\d+)/) + resolve(match ? parseInt(match[1], 10) : 0) + }) + cp.on('error', () => resolve(0)) + }) +} + function runCommand(cmd: string, args: string[], opts: { cwd: string }): Promise { return new Promise((resolve, reject) => { const cp = spawn(cmd, args, {