Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: pnpm/action-setup
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v6.0.6
Choose a base ref
...
head repository: pnpm/action-setup
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v6.0.7
Choose a head ref
  • 4 commits
  • 5 files changed
  • 2 contributors

Commits on May 10, 2026

  1. fix: honor devEngines.packageManager.onFail=error (#252) (#254)

    ## Summary
    - Export `pnpm_config_pm_on_fail=download` from the action so the bootstrap pnpm switches versions via `manage-package-manager-versions` instead of throwing `BAD_PM_VERSION` when a project pins `devEngines.packageManager.onFail = "error"` without supplying a `version:` input.
    - Adds a `test_dev_engines_on_fail_error` workflow job (Linux/macOS/Windows, exact + range) that reproduces #252.
    
    Fixes #252.
    zkochan authored May 10, 2026
    Configuration menu
    Copy the full SHA
    1155470 View commit details
    Browse the repository at this point in the history

Commits on May 11, 2026

  1. Configuration menu
    Copy the full SHA
    7a5507b View commit details
    Browse the repository at this point in the history
  2. chore: add CODEOWNERS

    zkochan committed May 11, 2026
    Configuration menu
    Copy the full SHA
    f61705d View commit details
    Browse the repository at this point in the history
  3. fix: self-update bootstrap to packageManager-pinned version (#233) (#256

    )
    
    * fix: self-update bootstrap to packageManager-pinned version (#233)
    
    When package.json pins pnpm via `packageManager` or an exact
    `devEngines.packageManager.version`, self-update the bootstrap up
    front. The bootstrap's `pnpm store path` skips pnpm's auto-switch
    (the `store` command sets `skipPackageManagerCheck = true`), so it
    reports the bootstrap's `STORE_VERSION` while the user's actual
    install runs under the pinned version and writes to a different
    STORE_VERSION — breaking `cache: true` and `setup-node`'s
    `cache: pnpm` on cold caches.
    
    * fix: check bin/ dir instead of pnpm.exe for self-update detection
    
    On Windows pnpm self-update writes `.bin/bin/pnpm` (a JS launcher),
    not `.bin/bin/pnpm.exe`, so the previous existsSync probe always
    fell back to pnpmHome and the bin_dest output pointed at the
    bootstrap pnpm. Check whether the `bin` directory itself exists.
    
    * fix: self-update accepts ranges; drop exact-semver gate
    
    `pnpm self-update` resolves semver ranges to a specific version, so
    `devEngines.packageManager.version: ">=10 <11"` can also go through
    the self-update path. That makes readTargetVersion total — it always
    returns a string or throws — so the runtime auto-switch fallback (and
    the `pnpm_config_pm_on_fail=download` export from #252) is no longer
    reachable and gets removed.
    
    Adds a range case to the cache_store_path matrix.
    zkochan authored May 11, 2026
    Configuration menu
    Copy the full SHA
    739bfe4 View commit details
    Browse the repository at this point in the history
Loading