on:
  push:
    branches: ['master']
  pull_request:
name: build
jobs:
  test:
    strategy:
      matrix:
        go-version: [1.24.x, 1.25.x]
        os: [ubuntu-latest, macos-latest, windows-latest]
    runs-on: ${{ matrix.os }}
    steps:
    - name: Install Go
      uses: actions/setup-go@4dc6199c7b1a012772edbd06daecab0f50c9053c
      with:
        go-version: ${{ matrix.go-version }}
    - name: Checkout code
      uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8
    - name: Test
      run: go test -covermode atomic -coverprofile='${{ matrix.os }}-${{ matrix.go-version }}.cov' ./...
    - name: Coveralls Parallel
      uses: coverallsapp/github-action@648a8eb78e6d50909eff900e4ec85cab4524a45b
      with:
        file: '${{ matrix.os }}-${{ matrix.go-version }}.cov'
        parallel: true
  finish:
    needs: test
    runs-on: ubuntu-latest
    steps:
    - name: Coveralls Finished
      uses: coverallsapp/github-action@648a8eb78e6d50909eff900e4ec85cab4524a45b
      with:
        parallel-finished: true
