name: CI on: push: branches: [master, main] pull_request: branches: [master, main] jobs: test: strategy: fail-fast: false matrix: os: [ubuntu-latest, macos-latest] nim-version: ['2.2.4', 'stable'] runs-on: ${{ matrix.os }} name: ${{ matrix.os }} / Nim ${{ matrix.nim-version }} steps: - uses: actions/checkout@v4 - name: Setup Nim uses: jiro4989/setup-nim-action@v2 with: nim-version: ${{ matrix.nim-version }} repo-token: ${{ secrets.GITHUB_TOKEN }} - name: Cache nimble packages uses: actions/cache@v4 with: path: ~/.nimble key: ${{ runner.os }}-nimble-${{ matrix.nim-version }}-${{ hashFiles('*.nimble') }} restore-keys: | ${{ runner.os }}-nimble-${{ matrix.nim-version }}- ${{ runner.os }}-nimble- - name: Install dependencies run: nimble install -y --depsOnly - name: Build run: nimble build -y - name: Run allocation tests run: nimble test_alloc -y - name: Run FFI context tests run: nimble test_ffi -y