Update dependency js-yaml to v5.2.1 #2355
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: Test | |
| on: [push, pull_request] | |
| permissions: read-all | |
| concurrency: | |
| group: ${{ github.ref_name }}-${{ github.workflow }} | |
| cancel-in-progress: true | |
| jobs: | |
| test: | |
| # Skip push runs for feature branches; pull_request will cover them | |
| if: github.event_name != 'push' || github.ref_name == github.event.repository.default_branch | |
| strategy: | |
| fail-fast: false | |
| # Curated matrix (instead of the full node x java x os product) to keep CI fast | |
| # while preserving meaningful coverage: | |
| # - Linux runs all 4 JDKs, including the out-of-range 11 & 25 that exercise | |
| # java-caller's JRE auto-download path (the path most sensitive to java-caller bumps). | |
| # - Both supported Node versions (22 & 24) are covered. | |
| # - macOS and Windows each get one representative in-range JDK leg. | |
| # - Windows skips out-of-range JDKs (11 & 25): the JRE auto-download spawn fails there | |
| # (ENOENT under node 24) and hangs the suite. | |
| # NOTE: this is a pure `include` list with NO base matrix dimensions. A base | |
| # dimension (e.g. `java_distrib: [temurin]`) would make GitHub merge every include | |
| # entry into that single combination (last-one-wins), collapsing all legs into ONE | |
| # job. With include only, each entry becomes its own job. | |
| matrix: | |
| include: | |
| # Linux - full JDK range on latest Node (incl. out-of-range auto-download 11 & 25) | |
| - { os: ubuntu-latest, node_version: '24', java_version: '11', java_distrib: temurin } | |
| - { os: ubuntu-latest, node_version: '24', java_version: '17', java_distrib: temurin } | |
| - { os: ubuntu-latest, node_version: '24', java_version: '21', java_distrib: temurin } | |
| - { os: ubuntu-latest, node_version: '24', java_version: '25', java_distrib: temurin } | |
| # Linux - older supported Node on the baseline JDK | |
| - { os: ubuntu-latest, node_version: '22', java_version: '17', java_distrib: temurin } | |
| # macOS - one representative in-range leg | |
| - { os: macos-latest, node_version: '24', java_version: '21', java_distrib: temurin } | |
| # Windows - in-range JDKs only, one per supported Node version | |
| - { os: windows-latest, node_version: '24', java_version: '17', java_distrib: temurin } | |
| - { os: windows-latest, node_version: '22', java_version: '21', java_distrib: temurin } | |
| # Explicit name so each curated leg shows as a distinct, readable check | |
| name: Test (${{ matrix.os }}, node ${{ matrix.node_version }}, jdk ${{ matrix.java_version }}) | |
| runs-on: ${{ matrix.os }} | |
| timeout-minutes: 15 | |
| steps: | |
| - name: Checkout Code | |
| uses: actions/checkout@v7 | |
| - name: Install node | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: ${{ matrix.node_version }} | |
| - name: Install Java | |
| uses: actions/setup-java@v5 | |
| with: | |
| distribution: ${{ matrix.java_distrib }} | |
| java-version: ${{ matrix.java_version }} | |
| - name: Install dependencies and link | |
| run: npm ci && npm link | |
| - name: Run tests | |
| run: npm run test | |
| coverage: | |
| if: github.event_name != 'push' || github.ref_name == github.event.repository.default_branch | |
| name: Test - No Java - CodeCov | |
| strategy: | |
| matrix: | |
| debian_version: [bookworm] | |
| node_version: ['24'] | |
| os: [ubuntu-latest] | |
| runs-on: ${{ matrix.os }} | |
| container: | |
| image: "node:${{ matrix.node_version }}-${{ matrix.debian_version }}" | |
| timeout-minutes: 15 | |
| steps: | |
| - name: Checkout Code | |
| uses: actions/checkout@v7 | |
| - name: Install dependencies and link | |
| run: npm ci && npm link | |
| - name: Run tests | |
| run: npm run test:coverage | |
| # - name: Build coverage report | |
| # run: ./node_modules/.bin/nyc report --reporter text-lcov > coverage.lcov | |
| # - name: Upload coverage to Codecov | |
| # uses: codecov/codecov-action@v4 | |
| # with: | |
| # fail_ci_if_error: true | |
| # verbose: true | |
| # token: ${{ secrets.CODECOV_TOKEN }} # required |