deps(deps-dev): bump @typescript-eslint/eslint-plugin from 6.21.0 to 7.0.0 #62
Workflow file for this run
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: [ main, dev ] | |
| pull_request: | |
| branches: [ main, dev ] | |
| jobs: | |
| test-node: | |
| name: Test on Node.js | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| node-version: ['20.19', '22.12', '24'] | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v2 | |
| with: | |
| version: 8 | |
| - name: Setup Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| cache: 'pnpm' | |
| - name: Install dependencies | |
| run: pnpm install | |
| - name: Run linter | |
| run: pnpm lint | |
| - name: Run type check | |
| run: pnpm typecheck | |
| - name: Run tests | |
| run: pnpm test | |
| # Retry tests on Node 20.19 due to vitest worker thread flakiness | |
| continue-on-error: ${{ matrix.node-version == '20.19' }} | |
| - name: Retry tests on Node 20.19 (if failed) | |
| if: failure() && matrix.node-version == '20.19' | |
| run: | | |
| echo "Retrying tests on Node 20.19 due to known flakiness..." | |
| pnpm test | |
| - name: Build library | |
| run: pnpm build | |
| test-bun: | |
| name: Test on Bun | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v1 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| - name: Run tests | |
| run: bun test tests/bun.test.ts | |
| - name: Test TypeScript compilation | |
| run: bun run typecheck | |
| test-deno: | |
| name: Test on Deno | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup Deno | |
| uses: denoland/setup-deno@v1 | |
| with: | |
| deno-version: v2.x | |
| - name: Run Deno tests | |
| run: deno test --no-check --allow-read --allow-env tests/deno-simple.test.ts | |
| build-test: | |
| name: Build Test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v2 | |
| with: | |
| version: 8 | |
| - name: Setup Node.js 20.19 | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20.19' | |
| cache: 'pnpm' | |
| - name: Install dependencies | |
| run: pnpm install | |
| - name: Build library | |
| run: pnpm build | |
| - name: Test built artifacts | |
| run: | | |
| node -e "const lib = require('./dist/index.js'); console.log('CJS build works:', typeof lib.createLogger === 'function')" | |
| node -e "import('./dist/index.esm.js').then(lib => console.log('ESM build works:', typeof lib.createLogger === 'function'))" | |
| security: | |
| name: Security Scan | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v2 | |
| with: | |
| version: 8 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20.19' | |
| cache: 'pnpm' | |
| - name: Install dependencies | |
| run: pnpm install | |
| - name: Run security audit | |
| run: pnpm audit | |
| - name: Run dependency scan | |
| uses: actions/dependency-review-action@v3 | |
| if: github.event_name == 'pull_request' |