evoc-rs 0.1.2

Rust port of the EVoC clustering algorithm for high dimensional data
Documentation
name: Test the package
on:
  push:
    branches: [main, dev-branch]
  pull_request:
    branches: [main, dev-branch]

jobs:
  test-cpu:
    name: Test (CPU) on ${{ matrix.os }}
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, macos-latest, windows-latest]
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - name: Cache cargo
        uses: actions/cache@v4
        with:
          path: |
            ~/.cargo/bin/
            ~/.cargo/registry/index/
            ~/.cargo/registry/cache/
            ~/.cargo/git/db/
            target/
          key: ${{ runner.os }}-cargo-cpu-${{ github.sha }}
          restore-keys: |
            ${{ runner.os }}-cargo-cpu-
      - run: cargo test --release --no-default-features

  test-gpu:
    name: Test (GPU) on ${{ matrix.os }}
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, macos-latest]
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - name: Cache cargo
        uses: actions/cache@v4
        with:
          path: |
            ~/.cargo/bin/
            ~/.cargo/registry/index/
            ~/.cargo/registry/cache/
            ~/.cargo/git/db/
            target/
          key: ${{ runner.os }}-cargo-gpu-${{ github.sha }}
          restore-keys: |
            ${{ runner.os }}-cargo-gpu-
      - name: Install Vulkan (Linux)
        if: runner.os == 'Linux'
        run: |
          sudo apt-get update
          sudo apt-get install -y libvulkan1 mesa-vulkan-drivers libgl1-mesa-dri
          echo "WGPU_BACKEND=vulkan" >> $GITHUB_ENV
      - run: cargo test --release --all-features