Skip to content

Develop#60

Merged
gabrielrufino merged 4 commits into
mainfrom
develop
Mar 14, 2026
Merged

Develop#60
gabrielrufino merged 4 commits into
mainfrom
develop

Conversation

@gabrielrufino
Copy link
Copy Markdown
Collaborator

  • feat: support npm, yarn and pnpm package managers
  • fix: split setup-node into two steps to support corepack-based caching
  • fix: make package manager caching optional based on lock file existence

- Add `package-manager` input (defaults to `npm`)
- Use `corepack enable` to handle package manager binaries
- Add input validation using `@actalog/expect@v1`
- Update all internal commands to be dynamic based on the selected manager
- Update CI workflow to test all managers via matrix
- Update README with new documentation and usage examples
- Install Node.js first to ensure `corepack` is available in the environment
- Enable `corepack` before configuring the package manager cache
- Run `setup-node` a second time to handle caching now that shims are in PATH
- Add explanatory comments for the dual-step approach and ensure version consistency
- Use `hashFiles` to check for `pnpm-lock.yaml`, `yarn.lock`, or `package-lock.json`
- Only enable the `cache` input in `setup-node` if the corresponding file exists
- Prevent workflow failures when the selected manager's lock file is missing
- Simplify logic using a ternary-like expression directly in the YAML
@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status
Build skipped
Lint success
Test success

Statistics

  • node_modules size: 156M

Outdated packages

Package                          Current  Wanted  Latest  Location                                      Depended by
@antfu/eslint-config               6.7.3   6.7.3   7.7.2  node_modules/@antfu/eslint-config             node-ci
@commitlint/cli                   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/cli                  node-ci
@commitlint/config-conventional   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/config-conventional  node-ci
@vitest/coverage-v8               4.0.18   4.1.0   4.1.0  node_modules/@vitest/coverage-v8              node-ci
eslint                            9.39.3  9.39.4  10.0.3  node_modules/eslint                           node-ci
vitest                            4.0.18   4.1.0   4.1.0  node_modules/vitest                           node-ci

Environment

  • Runner OS: Linux
  • Runner Arch: X64
  • Node version: 24
  • Package manager: npm

@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status
Build success
Lint success
Test success

Statistics

  • node_modules size: 156M

Outdated packages

Package                          Current  Wanted  Latest  Location                                      Depended by
@antfu/eslint-config               6.7.3   6.7.3   7.7.2  node_modules/@antfu/eslint-config             node-ci
@commitlint/cli                   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/cli                  node-ci
@commitlint/config-conventional   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/config-conventional  node-ci
@vitest/coverage-v8               4.0.18   4.1.0   4.1.0  node_modules/@vitest/coverage-v8              node-ci
eslint                            9.39.3  9.39.4  10.0.3  node_modules/eslint                           node-ci
vitest                            4.0.18   4.1.0   4.1.0  node_modules/vitest                           node-ci

Environment

  • Runner OS: Linux
  • Runner Arch: X64
  • Node version: 24
  • Package manager: npm

@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status
Build success
Lint success
Test success

Statistics

  • node_modules size: 149M

Outdated packages

Package                          Current  Wanted  Latest  Location                                      Depended by
@antfu/eslint-config               6.7.3   6.7.3   7.7.2  node_modules/@antfu/eslint-config             node-ci
@commitlint/cli                   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/cli                  node-ci
@commitlint/config-conventional   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/config-conventional  node-ci
@vitest/coverage-v8               4.0.18   4.1.0   4.1.0  node_modules/@vitest/coverage-v8              node-ci
eslint                            9.39.3  9.39.4  10.0.3  node_modules/eslint                           node-ci
vitest                            4.0.18   4.1.0   4.1.0  node_modules/vitest                           node-ci

Environment

  • Runner OS: macOS
  • Runner Arch: ARM64
  • Node version: 24
  • Package manager: npm

@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status
Build success
Lint success
Test success

Statistics

  • node_modules size: 171M

Outdated packages

┌────────────────────────────┬─────────┬────────┐
│ Package                    │ Current │ Latest │
├────────────────────────────┼─────────┼────────┤
│ @antfu/eslint-config (dev) │ 6.7.3   │ 7.7.2  │
├────────────────────────────┼─────────┼────────┤
│ eslint (dev)               │ 9.39.4  │ 10.0.3 │
└────────────────────────────┴─────────┴────────┘

Environment

  • Runner OS: Linux
  • Runner Arch: X64
  • Node version: 24
  • Package manager: pnpm

@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status
Build success
Lint success
Test success

Statistics

  • node_modules size: 192M

Outdated packages

yarn outdated v1.22.22
info Color legend : 
 "<red>"    : Major Update backward-incompatible updates 
 "<yellow>" : Minor Update backward-compatible features 
 "<green>"  : Patch Update backward-compatible bug fixes
Package              Current Wanted Latest Package Type    URL                                   
@antfu/eslint-config 6.7.3   6.7.3  7.7.2  devDependencies https://github.com/antfu/eslint-config
eslint               9.39.4  9.39.4 10.0.3 devDependencies https://eslint.org                    
Done in 0.49s.

Environment

  • Runner OS: Linux
  • Runner Arch: X64
  • Node version: 24
  • Package manager: yarn

@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status
Build success
Lint success
Test success

Statistics

  • node_modules size: 156M

Outdated packages

Package                          Current  Wanted  Latest  Location                                      Depended by
@antfu/eslint-config               6.7.3   6.7.3   7.7.2  node_modules/@antfu/eslint-config             node-ci
@commitlint/cli                   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/cli                  node-ci
@commitlint/config-conventional   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/config-conventional  node-ci
@vitest/coverage-v8               4.0.18   4.1.0   4.1.0  node_modules/@vitest/coverage-v8              node-ci
eslint                            9.39.3  9.39.4  10.0.3  node_modules/eslint                           node-ci
vitest                            4.0.18   4.1.0   4.1.0  node_modules/vitest                           node-ci

Environment

  • Runner OS: Linux
  • Runner Arch: X64
  • Node version: 24
  • Package manager: npm

- Calculate execution time for install, build, lint, and test steps
- Add 'Install' step and 'Duration' column to the PR summary table
- Use manual timestamp calculation to provide duration in seconds
- Format and align the summary table in `action.yml` for better readability
@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status Duration
Install success 6s
Build success 1s
Lint success 3s
Test success 0s

Statistics

  • node_modules size: 156M

Outdated packages

Package                          Current  Wanted  Latest  Location                                      Depended by
@antfu/eslint-config               6.7.3   6.7.3   7.7.2  node_modules/@antfu/eslint-config             node-ci
@commitlint/cli                   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/cli                  node-ci
@commitlint/config-conventional   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/config-conventional  node-ci
@vitest/coverage-v8               4.0.18   4.1.0   4.1.0  node_modules/@vitest/coverage-v8              node-ci
eslint                            9.39.3  9.39.4  10.0.3  node_modules/eslint                           node-ci
vitest                            4.0.18   4.1.0   4.1.0  node_modules/vitest                           node-ci

Environment

  • Runner OS: Linux
  • Runner Arch: X64
  • Node version: 24
  • Package manager: npm

@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status Duration
Install success 8s
Build success 0s
Lint success 4s
Test success 1s

Statistics

  • node_modules size: 171M

Outdated packages

┌────────────────────────────┬─────────┬────────┐
│ Package                    │ Current │ Latest │
├────────────────────────────┼─────────┼────────┤
│ @antfu/eslint-config (dev) │ 6.7.3   │ 7.7.2  │
├────────────────────────────┼─────────┼────────┤
│ eslint (dev)               │ 9.39.4  │ 10.0.3 │
└────────────────────────────┴─────────┴────────┘

Environment

  • Runner OS: Linux
  • Runner Arch: X64
  • Node version: 24
  • Package manager: pnpm

@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status Duration
Install success 3s
Build success 0s
Lint success 2s
Test success 1s

Statistics

  • node_modules size: 147M

Outdated packages

Package                          Current  Wanted  Latest  Location                                      Depended by
@antfu/eslint-config               6.7.3   6.7.3   7.7.2  node_modules/@antfu/eslint-config             node-ci
@commitlint/cli                   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/cli                  node-ci
@commitlint/config-conventional   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/config-conventional  node-ci
@vitest/coverage-v8               4.0.18   4.1.0   4.1.0  node_modules/@vitest/coverage-v8              node-ci
eslint                            9.39.3  9.39.4  10.0.3  node_modules/eslint                           node-ci
vitest                            4.0.18   4.1.0   4.1.0  node_modules/vitest                           node-ci

Environment

  • Runner OS: macOS
  • Runner Arch: ARM64
  • Node version: 24
  • Package manager: npm

@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status Duration
Install success 5s
Build skipped -
Lint success 3s
Test success 0s

Statistics

  • node_modules size: 156M

Outdated packages

Package                          Current  Wanted  Latest  Location                                      Depended by
@antfu/eslint-config               6.7.3   6.7.3   7.7.2  node_modules/@antfu/eslint-config             node-ci
@commitlint/cli                   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/cli                  node-ci
@commitlint/config-conventional   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/config-conventional  node-ci
@vitest/coverage-v8               4.0.18   4.1.0   4.1.0  node_modules/@vitest/coverage-v8              node-ci
eslint                            9.39.3  9.39.4  10.0.3  node_modules/eslint                           node-ci
vitest                            4.0.18   4.1.0   4.1.0  node_modules/vitest                           node-ci

Environment

  • Runner OS: Linux
  • Runner Arch: X64
  • Node version: 24
  • Package manager: npm

@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status Duration
Install success 5s
Build success 1s
Lint success 3s
Test success 1s

Statistics

  • node_modules size: 156M

Outdated packages

Package                          Current  Wanted  Latest  Location                                      Depended by
@antfu/eslint-config               6.7.3   6.7.3   7.7.2  node_modules/@antfu/eslint-config             node-ci
@commitlint/cli                   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/cli                  node-ci
@commitlint/config-conventional   20.4.2  20.4.4  20.4.4  node_modules/@commitlint/config-conventional  node-ci
@vitest/coverage-v8               4.0.18   4.1.0   4.1.0  node_modules/@vitest/coverage-v8              node-ci
eslint                            9.39.3  9.39.4  10.0.3  node_modules/eslint                           node-ci
vitest                            4.0.18   4.1.0   4.1.0  node_modules/vitest                           node-ci

Environment

  • Runner OS: Linux
  • Runner Arch: X64
  • Node version: 24
  • Package manager: npm

@github-actions
Copy link
Copy Markdown

@actalog/node-ci

Node CI completed!

Steps

Step Status Duration
Install success 13s
Build success 1s
Lint success 3s
Test success 0s

Statistics

  • node_modules size: 192M

Outdated packages

yarn outdated v1.22.22
info Color legend : 
 "<red>"    : Major Update backward-incompatible updates 
 "<yellow>" : Minor Update backward-compatible features 
 "<green>"  : Patch Update backward-compatible bug fixes
Package              Current Wanted Latest Package Type    URL                                   
@antfu/eslint-config 6.7.3   6.7.3  7.7.2  devDependencies https://github.com/antfu/eslint-config
eslint               9.39.4  9.39.4 10.0.3 devDependencies https://eslint.org                    
Done in 0.42s.

Environment

  • Runner OS: Linux
  • Runner Arch: X64
  • Node version: 24
  • Package manager: yarn

@gabrielrufino gabrielrufino self-assigned this Mar 14, 2026
@gabrielrufino gabrielrufino merged commit 0e345e7 into main Mar 14, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant