Skip to content

Do some TODOs

Do some TODOs #88

Workflow file for this run

name: Quick tests
on:
pull_request:
push:
branches:
- v3
- main
- stable-*.*
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
basic-tests:
name: ${{ matrix.compiler }}
timeout-minutes: 60
runs-on: ubuntu-latest
env:
CXX: ccache ${{ matrix.compiler }}
CXXFLAGS: -fdiagnostics-color -O2 -g
strategy:
fail-fast: false
matrix:
compiler: [clang++, g++]
steps:
- uses: actions/checkout@v6
- name: test
run: |
echo ${{ github.event_name }}
echo ${{ github.event_name == 'pull_request' }}
- name: Setup ccache . . .
uses: Chocobo1/setup-ccache-action@v1
with:
update_packager_index: false
install_ccache: true
- name: Configure . . .
run: |
mkdir -p m4
./autogen.sh
./configure CXX="$CXX" CXXFLAGS="$CXXFLAGS"
- name: Build libsemigroups . . .
run: make -j4
- name: Build test_all . . .
run: make test_all -j4
- name: Run the quick and standard tests . . .
run: ./test_all --reporter junit::out=junit.xml "[quick],[standard]"
- name: Upload test results to Codecov
if: ${{ !cancelled() && matrix.compiler == 'g++' }}
uses: codecov/test-results-action@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: true
verbose: true
benchmarks:
name: Benchmarks compile
timeout-minutes: 10
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' }}
env:
CXX: ccache g++
CXXFLAGS: -fdiagnostics-color
steps:
- uses: actions/checkout@v6
- name: Setup ccache . . .
uses: Chocobo1/setup-ccache-action@v1
with:
update_packager_index: false
install_ccache: true
- name: Configure . . .
run: |
mkdir -p m4
./autogen.sh
./configure CXX="$CXX" CXXFLAGS="$CXXFLAGS"
- name: Build libsemigroups . . .
run: make -j4
- name: Build bench_all . . .
run: |
make bench_all -j4
distcheck:
timeout-minutes: 15
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' }}
env:
CXX: ccache g++
CXXFLAGS: -fdiagnostics-color
steps:
- uses: actions/checkout@v6
- name: Setup ccache . . .
uses: Chocobo1/setup-ccache-action@v1
with:
update_packager_index: false
install_ccache: true
- name: Configure . . .
run: |
mkdir -p m4
./autogen.sh
./configure CXX="$CXX" CXXFLAGS="$CXXFLAGS"
- name: make distcheck . . .
run: make distcheck -j4
doc:
timeout-minutes: 10
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' }}
steps:
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: 3.13
- name: Install dependencies . . .
run: |
sudo apt-get --yes update
sudo apt-get install graphviz --yes
- name: Set up Homebrew . . .
uses: Homebrew/actions/setup-homebrew@master
- name: Install latest doxygen . . .
run: |
brew install gcc
brew install doxygen
- name: Pip install docs/requirements.txt . . .
run: pip install -r docs/requirements.txt
- name: Clone doxygen-awesome-css . . .
run: |
git submodule update --init --recursive
- name: Configure . . .
run: |
mkdir -p m4 && ./autogen.sh && ./configure
- name: Build documentation . . .
run: |
echo "Doxygen version: "
doxygen --version
make doc
# echo TODO(0) actually check that the doc can be built ok
# ( ! (grep "WARNING:" make-doc-sphinx.log | grep -v "WARNING: bibtex citations changed, rerun sphinx" | grep -v "WARNING: Could not lex literal_block") )