Set COMPACT for fastest build (#107) #307
This file contains 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: | |
branches: [ main ] | |
pull_request: | |
jobs: | |
test: | |
runs-on: ${{ matrix.os }} | |
defaults: | |
run: | |
shell: bash -l {0} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: ["ubuntu-latest", "macos-latest", "windows-latest"] | |
source: ["conda-forge"] | |
# os: ["ubuntu-latest"] | |
# source: ["source"] | |
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] | |
graphblas-version: ["8.2.0"] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Conda | |
uses: conda-incubator/setup-miniconda@v2 | |
with: | |
auto-update-conda: true | |
python-version: ${{ matrix.python-version }} | |
environment-file: continuous_integration/environment.yml | |
channels: conda-forge,nodefaults | |
channel-priority: strict | |
activate-environment: suitesparse-graphblas | |
auto-activate-base: false | |
- name: GraphBLAS (from conda-forge) | |
if: (contains(matrix.source, 'conda-forge')) | |
run: | | |
conda install graphblas=${{ matrix.graphblas-version }} | |
- name: GraphBLAS (from source) | |
if: (contains(matrix.source, 'source')) | |
run: | | |
# From release (does not work with beta versions) | |
GRAPHBLAS_PREFIX=${CONDA_PREFIX} bash suitesparse.sh refs/tags/${{ matrix.graphblas-version }}.0 | |
# From tag | |
# curl -L https://github.com/DrTimothyAldenDavis/GraphBLAS/archive/refs/tags/v${{ matrix.graphblas-version }}.tar.gz | tar xzf - | |
# pushd GraphBLAS-${{ matrix.graphblas-version }}/build | |
# From branch | |
# curl -L https://github.com/DrTimothyAldenDavis/GraphBLAS/tarball/${{ matrix.graphblas-version }} | tar xzf - | |
# pushd DrTim*/build | |
# echo ${CONDA_PREFIX} | |
# cmake -DJITINIT=2 -DCMAKE_INSTALL_PREFIX=${CONDA_PREFIX} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=Release .. | |
# cat Makefile | |
# make all JOBS=16 | |
# make install | |
# popd | |
- name: Build | |
run: | | |
pip install -e . --no-deps | |
- name: Test | |
env: | |
CYTHON_COVERAGE: true | |
run: | | |
pytest -s -k test_print_jit_config | |
coverage run --branch -m pytest | |
coverage run -a --branch suitesparse_graphblas/tests/test_initialize.py | |
- name: create_headers.py check | |
if: (! contains(matrix.os, 'windows')) | |
run: | | |
coverage run -a --branch suitesparse_graphblas/create_headers.py | |
git diff --exit-code # error if anything changed |