Context
The recent pnpm 10.14 release introduces a new feature: devEngines.runtime,
allows declaring a JavaScript runtime (Node, Deno, Bun) in package.json.
Current recommended CI setup uses both actions/setup-node and pnpm/action-setup actions:
pnpm documentation
Use cache to reduce installation time
Code reference
on:
- push
- pull_request
jobs:
cache-and-install:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
name: Install pnpm
with:
version: 10
run_install: false
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: 'pnpm'
- name: Install dependencies
run: pnpm install
https://github.com/pnpm/action-setup?tab=readme-ov-file#notes
This action does not setup Node.js for you, use actions/setup-node yourself.
Questions
Given this new capability, I’d like to know whether using actions/setup-node in GitHub Actions workflows remains necessary,
or if pnpm@10.14 can fully handle runtime provisioning for CI environments:
If devEngines.runtime is used for Node.js from pnpm, does actions/setup-node become redundant?
Currently, setup-node offers functionality beyond installing Node, e.g.,
dependency caching (cache: pnpm), and handling authenticated registries.
If I rely solely on pnpm/setup-action I am losing these capabilities
Are there any plans for pnpm/action-setup to support similar features in the future?
Due to the state of devEngines support in actions/setup-node (pr in review: actions/setup-node#1283)
I don't have the chance to test how they behave together.
However, I’m curious how the new devEngines.runtime capability in pnpm
may affect the role pnpm/action-setup in GitHub Actions workflows. 😅
Thanks!
Context
The recent pnpm 10.14 release introduces a new feature:
devEngines.runtime,allows declaring a JavaScript runtime (Node, Deno, Bun) in
package.json.Current recommended CI setup uses both
actions/setup-nodeandpnpm/action-setupactions:pnpm documentation
Use cache to reduce installation time
Code reference
https://github.com/pnpm/action-setup?tab=readme-ov-file#notes
Questions
Given this new capability, I’d like to know whether using
actions/setup-nodein GitHub Actions workflows remains necessary,or if
pnpm@10.14can fully handle runtime provisioning for CI environments:If
devEngines.runtimeis used for Node.js frompnpm, doesactions/setup-nodebecome redundant?Currently,
setup-nodeoffers functionality beyond installing Node, e.g.,dependency caching (
cache: pnpm), and handling authenticated registries.If I rely solely on
pnpm/setup-actionI am losing these capabilitiesAre there any plans for
pnpm/action-setupto support similar features in the future?Due to the state of
devEnginessupport inactions/setup-node(pr in review: actions/setup-node#1283)I don't have the chance to test how they behave together.
However, I’m curious how the new
devEngines.runtimecapability inpnpmmay affect the role
pnpm/action-setupin GitHub Actions workflows. 😅Thanks!