Zoltan Kochan
d3bf712ddd
build: rebuild dist with clean lockfile-matched deps
Test Action / Test version input is actually installed (10.33.0, macos-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, windows-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test bin_dest output points to requested version (10.33.2, macos-latest) (push) Has been cancelled
Test Action / Test bin_dest output points to requested version (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test bin_dest output points to requested version (10.33.2, ubuntu-latest) (push) Has been cancelled
Test Action / Test bin_dest output points to requested version (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test bin_dest output points to requested version (10.33.2, windows-latest) (push) Has been cancelled
Test Action / Test bin_dest output points to requested version (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, macos-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test with default inputs (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with standalone (ubuntu-latest) (push) Has been cancelled
Test Action / Test with standalone (windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, ubuntu-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with run_install (global, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (null, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (global, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (null, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (global, windows-latest) (push) Has been cancelled
Test Action / Test with run_install (null, windows-latest) (push) Has been cancelled
2026-05-07 09:03:15 +02:00
Zoltan Kochan
01da663869
test(ci): pass bin_dest via env to survive Windows backslashes
...
Direct GitHub-expression interpolation of `${{ steps.pnpm.outputs.bin_dest }}`
into the bash script let bash eat the backslashes in the Windows path
(`C:Usersrunneradminsetup-pnpmnode_modules.binbin/pnpm`), failing with
"No such file or directory". Forward the value via env so the path
reaches bash unmangled.
2026-05-07 08:59:18 +02:00
Zoltan Kochan
624e28f5d0
fix: bin_dest output points to self-updated pnpm, not bootstrap ( #247 )
...
`pnpm self-update <version>` writes the target binary to
`${PNPM_HOME}/bin/`, leaving the bootstrap symlink at `${PNPM_HOME}/pnpm`
untouched. The `bin_dest` output was set to `${PNPM_HOME}`, so consumers
invoking `${{ steps.pnpm.outputs.bin_dest }}/pnpm` got the bootstrap
version (currently 11.0.4) instead of the version they requested.
PATH lookup hid the bug: `${PNPM_HOME}/bin` was prepended ahead of
`${PNPM_HOME}`, so `pnpm` resolved from PATH was the right one. Existing
version-respect tests only checked `pnpm --version`, not `bin_dest`.
Resolve `binDest` inside `runSelfInstaller` (target lives in
`${PNPM_HOME}/bin` after self-update, otherwise stays at `${PNPM_HOME}`)
and plumb it through to `setOutputs`. Add a regression test that invokes
`${bin_dest}/pnpm --version` directly across Linux/macOS/Windows.
2026-05-07 08:55:16 +02:00
Zoltan Kochan
e578e19d19
fix: update pnpm to 11.0.4
2026-05-04 12:08:02 +02:00
Zoltan Kochan
8912a9102a
fix: append (not prepend) action node dir to PATH for npm bootstrap ( #241 )
Test Action / Test with default inputs (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with standalone (ubuntu-latest) (push) Has been cancelled
Test Action / Test with standalone (windows-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, macos-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, windows-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, macos-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, ubuntu-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with run_install (global, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (null, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (global, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (null, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (global, windows-latest) (push) Has been cancelled
Test Action / Test with run_install (null, windows-latest) (push) Has been cancelled
2026-05-02 16:10:46 +02:00
Ben Quarmby
26f6d4f2c5
fix: use npm co-located with the action node binary ( #239 )
...
Test Action / Test with default inputs (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with standalone (ubuntu-latest) (push) Has been cancelled
Test Action / Test with standalone (windows-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, macos-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, windows-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, macos-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, ubuntu-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with run_install (global, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (null, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (global, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (null, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (global, windows-latest) (push) Has been cancelled
Test Action / Test with run_install (null, windows-latest) (push) Has been cancelled
* fix: use npm co-located with the action node binary
* fix: resolve npm by absolute path; guard against unset PATH
Follow-up to 5a9e198. Two refinements to the GHE self-hosted runner fix:
- Spawn npm via `path.join(dirname(process.execPath), 'npm[.cmd]')`
instead of relying on PATH lookup. This matches the original PR
description and is robust against PATH-shadowed npm installations.
- Avoid `"<dir>:undefined"` leaking into PATH when `process.env.PATH`
is unset (rare, but possible in stripped environments).
PATH still has the node directory prepended so npm's
`#!/usr/bin/env node` shebang can resolve node on Linux/macOS.
* fix: revert npm to PATH lookup; runner externals lacks npm
Revert 42e75a1's switch to absolute-path npm resolution. The premise
that npm is co-located with the action's node binary is false on
GitHub-hosted runners: `process.execPath` points into
`runner/externals/node24/bin/`, which contains node only — not npm.
The absolute-path spawn produced ENOENT on Linux/macOS and
"not recognized" on Windows.
Go back to spawning `'npm'` and relying on PATH lookup, which works
on standard runners (npm is on PATH from the runner image) and on
the GHE self-hosted setup that motivated the original fix. Keep the
node-directory prepend so npm's `#!/usr/bin/env node` shebang
resolves, and keep the unset-PATH guard.
---------
Co-authored-by: Zoltan Kochan <z@kochan.io >
2026-04-30 22:28:41 +02:00
Zoltan Kochan
903f9c1a6e
fix: update pnpm to 11.0.0-rc.5
Test Action / Test with default inputs (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with standalone (ubuntu-latest) (push) Has been cancelled
Test Action / Test with standalone (windows-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, macos-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, windows-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, macos-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, ubuntu-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test with dest (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with run_install (global, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (null, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (global, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (null, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (global, windows-latest) (push) Has been cancelled
Test Action / Test with run_install (null, windows-latest) (push) Has been cancelled
2026-04-21 20:27:39 +02:00
Zoltan Kochan
bdf0af2a9d
test: add strict version-match jobs to reproduce #225 / #227
...
Test Action / Test with standalone (windows-latest) (push) Has been cancelled
Test Action / Test with default inputs (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with standalone (ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, macos-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (10.33.0, windows-latest) (push) Has been cancelled
Test Action / Test version input is actually installed (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, macos-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, macos-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, ubuntu-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, ubuntu-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (10.33.0, windows-latest) (push) Has been cancelled
Test Action / Test packageManager field is respected (9.15.5, windows-latest) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with run_install (global, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (null, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (global, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (null, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (global, windows-latest) (push) Has been cancelled
Test Action / Test with run_install (null, windows-latest) (push) Has been cancelled
The existing version tests only check output format via regex, which is
why the PATH-shadowing bug (#230 ) slipped through — the bootstrap pnpm's
version string matched the regex just as well as the requested version.
- test_version_respects_request: runs the action with `version: 9.15.5`
and `version: 10.33.0` (both differ from the bootstrap) and asserts
that `pnpm --version` matches exactly. Regression test for #225/#230.
- test_package_manager_field: writes a `packageManager: pnpm@<v>` entry
into package.json, runs the action with no `version:` input, and
asserts exact match. Reproduces #227 ; currently expected to fail
since `packageManager` extraction was intentionally not added.
2026-04-18 15:20:30 +02:00
oniani1
71c92474e7
fix: pnpm self-update binary shadowed by bootstrap on PATH ( #230 )
...
Test Action / Test with default inputs (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with standalone (ubuntu-latest) (push) Has been cancelled
Test Action / Test with standalone (windows-latest) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with run_install (global, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (null, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (global, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (null, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (global, windows-latest) (push) Has been cancelled
Test Action / Test with run_install (null, windows-latest) (push) Has been cancelled
Problem
pnpm self-update installs the target version to PNPM_HOME/bin/pnpm, but the bootstrap binary at PNPM_HOME/pnpm has higher PATH precedence because addPath(pnpmHome) was called after addPath(pnpmHome/bin). @actions/core's addPath prepends, so the later call wins — the bootstrap version shadows the self-updated binary.
Fix
Swap the addPath call order so PNPM_HOME/bin (where self-update puts the target binary) has higher PATH precedence. The bootstrap pnpm is invoked via absolute path, so this doesn't affect the bootstrap step.
2026-04-18 15:00:23 +02:00
Zoltan Kochan
078e9d4164
fix: update pnpm to 11.0.0-rc.2
Test Action / Test with default inputs (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with default inputs (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with dest (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with standalone (ubuntu-latest) (push) Has been cancelled
Test Action / Test with standalone (windows-latest) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (macos-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (ubuntu-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, 9.15.5) (push) Has been cancelled
Test Action / Test with devEngines.packageManager (windows-latest, >=9.15.0) (push) Has been cancelled
Test Action / Test with run_install (global, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (null, macos-latest) (push) Has been cancelled
Test Action / Test with run_install (global, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (null, ubuntu-latest) (push) Has been cancelled
Test Action / Test with run_install (global, windows-latest) (push) Has been cancelled
Test Action / Test with run_install (null, windows-latest) (push) Has been cancelled
2026-04-18 00:36:06 +02:00