fix: close conditional schema applicator gaps #78
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [ v2, main ] | |
| pull_request: | |
| branches: [ v2, main ] | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| # engines: >=18.0.0 (removed 16.x; added 22.x current LTS) | |
| node-version: [18.x, 20.x, 22.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: Build | |
| run: npm run build | |
| - name: Lint | |
| run: npm run lint | |
| - name: Type check | |
| run: npm run typecheck | |
| - name: Type contract tests | |
| run: npm run test:types | |
| - name: Run tests with coverage | |
| run: npm run test:coverage | |
| - name: Examples type check | |
| run: npm run examples:typecheck | |
| - name: Examples run | |
| run: npm run examples:run | |
| # Rspress/Rspack website builds require Node.js 20.19+ or 22.12+. | |
| # Keep package validation on Node 18, but build the website on supported Node lines. | |
| - name: Install website dependencies | |
| if: matrix.node-version != '18.x' | |
| working-directory: website | |
| run: npm ci | |
| - name: Website build | |
| if: matrix.node-version != '18.x' | |
| working-directory: website | |
| run: npm run build | |
| - name: ESM/CJS interop | |
| run: npm run test:interop | |
| - name: Version smoke | |
| run: npm run test:version | |
| - name: Production dependency audit | |
| run: npm run test:audit | |
| - name: Pack dry run | |
| run: npm pack --dry-run | |