The 2.x README tells projects on an oxc-based toolchain to stay on 1.x, but no such line existed — this branch point was version 0.1.0, so the advice pointed at nothing installable. - version 1.0.0 - CI runs on this branch as well as main and develop - README opens with a maintenance-line notice pointing new projects at 2.x and naming the one reason to stay here: oxc does not implement the TC39 standard decorator transform, while tsc and esbuild do - CHANGELOG names the release No functional change: the code is exactly the state merged as PR #3. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SAcqrz3FcadkYr3xG32CjK
42 lines
1.1 KiB
YAML
42 lines
1.1 KiB
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches: [ main, develop, 1.x ]
|
|
pull_request:
|
|
branches: [ main, develop, 1.x ]
|
|
|
|
jobs:
|
|
verify:
|
|
name: Node ${{ matrix.node-version }}
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
node-version: [20.x, 22.x, 24.x]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
cache: 'npm'
|
|
- name: Install dependencies
|
|
run: npm ci
|
|
- name: Type Check
|
|
run: npm run type-check
|
|
- name: Lint
|
|
run: npm run lint
|
|
- name: Test
|
|
run: npm run test:coverage
|
|
- name: Build
|
|
run: npm run build
|
|
- name: Verify published entry points load
|
|
run: |
|
|
node --input-type=module -e "import * as m from './dist/esm/index.js'; if (typeof m.toInstance !== 'function') throw new Error('ESM entry point broken');"
|
|
node --input-type=commonjs -e "const m = require('./dist/cjs/index.js'); if (typeof m.toInstance !== 'function') throw new Error('CJS entry point broken');"
|
|
- name: Run Demo
|
|
run: npm run demo
|