Skip to content

Experiment with using changesets to manage releases #249

Experiment with using changesets to manage releases

Experiment with using changesets to manage releases #249

Workflow file for this run

name: Test
on:
- push
- pull_request
jobs:
changeset:
if: ${{ github.event_name == 'pull_request' }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: actions/setup-node@v6
with:
node-version: "22"
- name: Install modules
run: npm install
- name: Fetch base branch
run: git fetch origin ${{ github.base_ref }} --depth=1
- name: Verify changeset status
run: npx changeset status --since=origin/${{ github.base_ref }}
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: "22"
- name: Install modules
run: npm install
- name: Lint code
run: npm run lint
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: "22"
- name: Install modules
run: npm install
- name: Test build
run: npm run build
- name: Test
run: npm run coverage
- name: Report coverage
uses: codecov/codecov-action@v5
with:
fail_ci_if_error: true
files: ./coverage/coverage-final.json
benchmarks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: "22"
- name: Install modules
run: npm install
- name: Build
run: npm run build
- name: Cache benchmark data
id: benchmark-cache
uses: actions/cache@v5
with:
path: .test-cache
key: ${{ runner.os }}-benchmark-cache
- name: Run benchmarks
run: npm run benchmarks
- name: Upload benchmark results
uses: actions/upload-artifact@v6
with:
name: benchmarks
path: benchmarks/*.csv
examples:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: "22"
- name: Install modules
run: npm install
- name: Build
run: npm run build
- name: Run examples
run: for e in examples/*.ts; do node "$e"; done