Files
personal-website/.github/workflows/ci-test.yml
T
djkotowskiandClaude Opus 4.8 2d14d87a83 Switch package manager from Yarn to pnpm (#214)
* Switch package manager from Yarn to pnpm

Replace Yarn 3 (Berry) with pnpm 11.12.0 (latest stable):

- Pin packageManager to [email protected].0; add pnpm-lock.yaml
- Remove yarn.lock, .yarnrc.yml, and the bundled .yarn/ release
- Update CI (ci-test, deploy) to use pnpm/action-setup + setup-node
  pnpm cache, with `pnpm install --frozen-lockfile` and pnpm scripts
- Switch Husky pre-commit hook to `pnpm check`
- Add pnpm-workspace.yaml allowlisting esbuild's build script, which
  pnpm 11 otherwise blocks with a hard error on install
- Update CLAUDE.md guidance and drop yarn-specific .gitignore entries

Verified: pnpm install --frozen-lockfile, pnpm check, and pnpm build
all pass locally.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>

* CI: read Node version from .tool-versions for pnpm 11 compat

pnpm 11.12.0 requires Node >=22.13, but the workflows pinned
node-version: '20' (20.20.2), failing install. Point setup-node at
.tool-versions (22.14.0) so CI and local dev share one source of truth.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-13 02:30:39 -05:00

28 lines
677 B
YAML

name: ci-test
run-name: "${{ github.actor }} is checking ${{ github.sha }}"
on:
pull_request: {}
push:
branches:
- 'main'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: '.tool-versions'
cache: 'pnpm'
- name: Install Dependencies
run: pnpm install --frozen-lockfile
- name: Lint solution
run: pnpm check