From 27b71db1e3dd649674383f26e3e1222c7180bec6 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 10:08:42 +0000 Subject: [PATCH 01/23] #71 Add Ubuntu 25.10 to CI testing --- .github/workflows/test-cells-ubuntu.yml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index 715b687..60240ad 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -8,15 +8,21 @@ on: jobs: test-cells-ubuntu: - runs-on: ${{ matrix.os }} - strategy: fail-fast: false matrix: - os: ["ubuntu-22.04", "ubuntu-24.04"] + include: + - image: "ubuntu:22.04" + - image: "ubuntu:24.04" + - image: "ubuntu:25.10" + + runs-on: ubuntu-latest + + container: + image: ${{ matrix.image }} concurrency: - group: test-cells-ubuntu-${{ github.ref }}-${{ matrix.os }} + group: test-cells-ubuntu-${{ github.ref }}-${{ matrix.image }} cancel-in-progress: true defaults: From 127d0f371c96288e62bf9f859531cea9a14f9894 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 10:12:28 +0000 Subject: [PATCH 02/23] #71 Update apt-get lines for container --- .github/workflows/test-cells-ubuntu.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index 60240ad..542f99f 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -35,7 +35,7 @@ jobs: - name: Install system dependencies run: | - sudo apt-get update + apt-get update for vtk_ver in $(seq 7 9); do available=1 @@ -46,7 +46,7 @@ jobs: done echo "VTK version: ${vtk_ver}" - sudo apt-get install \ + apt-get install \ castxml \ clang \ cmake \ From 06b1a6c34faa22b8df8dc47db78ce12c0992be20 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 10:14:58 +0000 Subject: [PATCH 03/23] #71 Always say yes to apt-get in containers --- .github/workflows/test-cells-ubuntu.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index 542f99f..c42da15 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -46,7 +46,7 @@ jobs: done echo "VTK version: ${vtk_ver}" - apt-get install \ + apt-get install -y \ castxml \ clang \ cmake \ From 55648035b3b8f0b5de9dcb1aeb38ef52fc94e0cb Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 11:02:00 +0000 Subject: [PATCH 04/23] #71 Use conda not mamba --- .github/workflows/test-cells-conda.yml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index 23e490a..d9d3ca0 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -25,7 +25,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install system dependencies run: | @@ -36,7 +36,6 @@ jobs: uses: conda-incubator/setup-miniconda@v3 with: auto-update-conda: true - use-mamba: true miniforge-version: latest python-version: ${{ matrix.python-version }} channels: conda-forge,defaults @@ -48,7 +47,7 @@ jobs: python -m pip install . - name: Install requirements - run: mamba install --yes --file conda/requirements.txt + run: conda install --yes --file conda/requirements.txt working-directory: examples/cells - name: Set config paths @@ -78,15 +77,15 @@ jobs: working-directory: examples/cells - name: Install conda-build tools - run: mamba install boa conda-build conda-verify + run: conda install boa conda-build conda-verify - name: Build run: | - conda mambabuild recipe -m variants/python${{ matrix.python-version }}.yaml + conda build recipe -m variants/python${{ matrix.python-version }}.yaml working-directory: examples/cells/conda - name: Install - run: mamba install --use-local pycells + run: conda install --use-local pycells - name: Test run: python -m unittest discover tests From d7465e2323a50e4fc59901a164be4f0a2dcab1f4 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 11:05:59 +0000 Subject: [PATCH 05/23] #71 Update github actions --- .github/workflows/test-cells-conda.yml | 6 +++--- .github/workflows/test-cells-ubuntu.yml | 2 +- .github/workflows/test-shapes-pip.yml | 14 +++++++------- .github/workflows/test-style.yml | 10 +++++----- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index d9d3ca0..4ac16d6 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -43,8 +43,8 @@ jobs: - name: Install cppwg run: | - python -m pip install --upgrade pip - python -m pip install . + python3 -m pip install --upgrade pip + python3 -m pip install . - name: Install requirements run: conda install --yes --file conda/requirements.txt @@ -88,5 +88,5 @@ jobs: run: conda install --use-local pycells - name: Test - run: python -m unittest discover tests + run: python3 -m unittest discover tests working-directory: examples/cells diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index c42da15..b7aa3de 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -31,7 +31,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install system dependencies run: | diff --git a/.github/workflows/test-shapes-pip.yml b/.github/workflows/test-shapes-pip.yml index a7d01b8..0d0d2f8 100644 --- a/.github/workflows/test-shapes-pip.yml +++ b/.github/workflows/test-shapes-pip.yml @@ -21,22 +21,22 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install system dependencies run: | sudo apt-get update - sudo apt-get install castxml clang cmake git + sudo apt-get install -y castxml clang cmake git - name: Setup Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: ${{ matrix.python-version }} - name: Install cppwg run: | - python -m pip install --upgrade pip - python -m pip install . + python3 -m pip install --upgrade pip + python3 -m pip install . - name: Regenerate wrappers run: | @@ -67,6 +67,6 @@ jobs: - name: Test run: | - python -m unittest test_functions.py - python -m unittest test_classes.py + python3 -m unittest test_functions.py + python3 -m unittest test_classes.py working-directory: examples/shapes/build diff --git a/.github/workflows/test-style.yml b/.github/workflows/test-style.yml index 7a9038d..47d8455 100644 --- a/.github/workflows/test-style.yml +++ b/.github/workflows/test-style.yml @@ -16,7 +16,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install dependencies run: | @@ -25,10 +25,10 @@ jobs: - name: Install cppwg run: | - python -m pip install --upgrade pip - python -m pip install .[dev] + python3 -m pip install --upgrade pip + python3 -m pip install .[dev] - name: Lint run: | - python -m flake8 --version - python -m flake8 . + python3 -m flake8 --version + python3 -m flake8 . From 0335012929b2bc9c7f23a61813cffe0fe63e4e56 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 11:19:11 +0000 Subject: [PATCH 06/23] #71 Simplify ubuntu test workflow --- .github/workflows/test-cells-ubuntu.yml | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index b7aa3de..2589422 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -33,11 +33,11 @@ jobs: - name: Checkout uses: actions/checkout@v6 - - name: Install system dependencies + - name: Get system vtk version run: | apt-get update - for vtk_ver in $(seq 7 9); do + for vtk_ver in $(seq 7 99); do available=1 dpkg -s "libvtk${vtk_ver}-dev" || available=0 if [ "${available}" -eq 1 ]; then @@ -45,7 +45,11 @@ jobs: fi done echo "VTK version: ${vtk_ver}" + echo "VTK_VERSION=${vtk_ver}" >> $GITHUB_ENV + - name: Install system dependencies + run: | + export DEBIAN_FRONTEND=noninteractive apt-get install -y \ castxml \ clang \ @@ -53,18 +57,19 @@ jobs: git \ libboost-all-dev \ libpetsc-real-dev \ - libvtk${vtk_ver}-dev \ + libvtk${{ env.VTK_VERSION }}-dev \ mpi-default-bin \ mpi-default-dev \ pipx \ python3-mpi4py \ python3-petsc4py-real \ python3-pip \ - python3-vtk${vtk_ver} + python3-vtk${{ env.VTK_VERSION }} pipx ensurepath - # Check installed package versions + - name: Check installed package versions + run: | dpkg-query -W \ castxml \ clang \ @@ -72,14 +77,14 @@ jobs: git \ libboost-all-dev \ libpetsc-real-dev \ - libvtk${vtk_ver}-dev \ + libvtk${{ env.VTK_VERSION }}-dev \ mpi-default-bin \ mpi-default-dev \ pipx \ python3-mpi4py \ python3-petsc4py-real \ python3-pip \ - python3-vtk${vtk_ver} + python3-vtk${{ env.VTK_VERSION }} - name: Install cppwg run: pipx install . From dcd800123d0c8f7058d12967fecd0c83c5dd4933 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 11:56:02 +0000 Subject: [PATCH 07/23] #71 Update vtk version finding in CI --- .github/workflows/test-cells-ubuntu.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index 2589422..dec681e 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -38,9 +38,8 @@ jobs: apt-get update for vtk_ver in $(seq 7 99); do - available=1 - dpkg -s "libvtk${vtk_ver}-dev" || available=0 - if [ "${available}" -eq 1 ]; then + vtk_pkg="$(apt-cache search --names-only ^libvtk${vtk_ver}-dev$)" + if [ -n "${vtk_pkg}" ]; then break fi done From 4ac1f8dbdaa99e9c2a10a0ba20fd7527201a1752 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 12:17:57 +0000 Subject: [PATCH 08/23] #71 Make vtk finding in CI more robust --- .github/workflows/test-cells-ubuntu.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index dec681e..09b6cbd 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -37,9 +37,11 @@ jobs: run: | apt-get update - for vtk_ver in $(seq 7 99); do - vtk_pkg="$(apt-cache search --names-only ^libvtk${vtk_ver}-dev$)" + vtk_ver= + for candidate in $(seq 7 99); do + vtk_pkg="$(apt-cache search --names-only ^libvtk${candidate}-dev$)" if [ -n "${vtk_pkg}" ]; then + vtk_ver="${candidate}" break fi done @@ -103,9 +105,8 @@ jobs: - name: Check for changes run: | - git diff --exit-code dynamic/wrappers + git diff --exit-code examples/cells/dynamic/wrappers grep "Unknown class" build/cppwg.log - working-directory: examples/cells - name: Build run: | From ba9485209d45cae0a37f338de42c4d170a4bcf3c Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 12:32:55 +0000 Subject: [PATCH 09/23] #71 Add git safe directory in container CI --- .github/workflows/test-cells-ubuntu.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index 09b6cbd..dcf655e 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -30,13 +30,20 @@ jobs: shell: bash -el {0} # -l needed to activate pipx steps: + - name: Install git + run: | + apt-get update + apt-get install -y git + - name: Checkout uses: actions/checkout@v6 - - name: Get system vtk version + - name: Set safe directory run: | - apt-get update + git config --global --add safe.directory $PWD + - name: Get system vtk version + run: | vtk_ver= for candidate in $(seq 7 99); do vtk_pkg="$(apt-cache search --names-only ^libvtk${candidate}-dev$)" @@ -55,7 +62,6 @@ jobs: castxml \ clang \ cmake \ - git \ libboost-all-dev \ libpetsc-real-dev \ libvtk${{ env.VTK_VERSION }}-dev \ From b70db9c62109cb682ac636f3ffe7822d292ac41a Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 13:33:52 +0000 Subject: [PATCH 10/23] #71 Fix paths on CI --- .github/workflows/test-cells-conda.yml | 2 +- .github/workflows/test-cells-ubuntu.yml | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index 4ac16d6..080bcfc 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -85,7 +85,7 @@ jobs: working-directory: examples/cells/conda - name: Install - run: conda install --use-local pycells + run: conda install -c local pycells - name: Test run: python3 -m unittest discover tests diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index dcf655e..cc03372 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -38,7 +38,7 @@ jobs: - name: Checkout uses: actions/checkout@v6 - - name: Set safe directory + - name: Set git safe directory run: | git config --global --add safe.directory $PWD @@ -111,8 +111,9 @@ jobs: - name: Check for changes run: | - git diff --exit-code examples/cells/dynamic/wrappers + git diff --exit-code dynamic/wrappers grep "Unknown class" build/cppwg.log + working-directory: examples/cells - name: Build run: | From 160d4036b4d1a4ce727ea6999c5f949fb75d1ba8 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 13:58:29 +0000 Subject: [PATCH 11/23] #71 Fix conda local install --- .github/workflows/test-cells-conda.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index 080bcfc..8bddf59 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -81,11 +81,12 @@ jobs: - name: Build run: | - conda build recipe -m variants/python${{ matrix.python-version }}.yaml + conda build recipe -m variants/python${{ matrix.python-version }}.yaml --output-folder ./build working-directory: examples/cells/conda - name: Install - run: conda install -c local pycells + run: conda install -c ./build pycells + working-directory: examples/cells/conda - name: Test run: python3 -m unittest discover tests From 40122836f232cbf92380df2b484a6bf2d4f4f6a1 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 14:41:21 +0000 Subject: [PATCH 12/23] #71 Upgrade pip on CI --- .github/workflows/test-cells-ubuntu.yml | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index cc03372..4a5fb60 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -8,15 +8,12 @@ on: jobs: test-cells-ubuntu: + runs-on: ubuntu-latest + strategy: fail-fast: false matrix: - include: - - image: "ubuntu:22.04" - - image: "ubuntu:24.04" - - image: "ubuntu:25.10" - - runs-on: ubuntu-latest + image: ["ubuntu:22.04", "ubuntu:24.04", "ubuntu:25.10"] container: image: ${{ matrix.image }} @@ -42,7 +39,7 @@ jobs: run: | git config --global --add safe.directory $PWD - - name: Get system vtk version + - name: Get system VTK version run: | vtk_ver= for candidate in $(seq 7 99); do @@ -118,12 +115,13 @@ jobs: - name: Build run: | python3 -m venv --system-site-packages .venv - . .venv/bin/activate + . .venv/bin/activate && \ + python3 -m pip install --upgrade pip && \ python3 -m pip install -v . working-directory: examples/cells - name: Test run: | - . .venv/bin/activate + . .venv/bin/activate && \ python3 -m unittest discover tests working-directory: examples/cells From d591e5bc7d92d1028219dbc61534156986089b58 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 14:47:01 +0000 Subject: [PATCH 13/23] #71 Simplify ubuntu test venv --- .github/workflows/test-cells-ubuntu.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-cells-ubuntu.yml b/.github/workflows/test-cells-ubuntu.yml index 4a5fb60..c01790c 100644 --- a/.github/workflows/test-cells-ubuntu.yml +++ b/.github/workflows/test-cells-ubuntu.yml @@ -112,11 +112,16 @@ jobs: grep "Unknown class" build/cppwg.log working-directory: examples/cells - - name: Build + - name: Create build env run: | python3 -m venv --system-site-packages .venv . .venv/bin/activate && \ - python3 -m pip install --upgrade pip && \ + python3 -m pip install --upgrade pip + working-directory: examples/cells + + - name: Build + run: | + . .venv/bin/activate && \ python3 -m pip install -v . working-directory: examples/cells From a55ad75e88e72215769ae13b45189476b0293111 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 15:30:07 +0000 Subject: [PATCH 14/23] #71 Pin status badges to develop --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 3b48845..897924d 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -![pip](https://github.com/Chaste/cppwg/actions/workflows/test-shapes-pip.yml/badge.svg) -![ubuntu](https://github.com/Chaste/cppwg/actions/workflows/test-cells-ubuntu.yml/badge.svg) -![conda](https://github.com/Chaste/cppwg/actions/workflows/test-cells-conda.yml/badge.svg) +![pip](https://github.com/Chaste/cppwg/actions/workflows/test-shapes-pip.yml/badge.svg?branch=develop) +![ubuntu](https://github.com/Chaste/cppwg/actions/workflows/test-cells-ubuntu.yml/badge.svg?branch=develop) +![conda](https://github.com/Chaste/cppwg/actions/workflows/test-cells-conda.yml/badge.svg?branch=develop) # cppwg From ac0ce6c97fc664ededc7e122ed92ca8a706242a9 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Thu, 26 Mar 2026 16:40:09 +0000 Subject: [PATCH 15/23] #71 Add conda clean in CI --- .github/workflows/test-cells-conda.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index 8bddf59..42577b3 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -47,7 +47,9 @@ jobs: python3 -m pip install . - name: Install requirements - run: conda install --yes --file conda/requirements.txt + run: | + conda clean --all --yes + conda install --yes --file conda/requirements.txt working-directory: examples/cells - name: Set config paths From 7443e37789f2eae698167474aa2c0703e9a961bd Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 27 Mar 2026 10:49:12 +0000 Subject: [PATCH 16/23] #71 Stagger start of conda jobs --- .github/workflows/test-cells-conda.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index 42577b3..3cb1221 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -9,9 +9,11 @@ on: jobs: test-cells-conda: runs-on: ubuntu-latest + timeout-minutes: 90 strategy: fail-fast: false + max-parallel: 2 matrix: python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] @@ -24,6 +26,13 @@ jobs: shell: bash -el {0} # -l needed to activate conda steps: + - name: Staggered sleep + run: | + if [[ ${{ matrix.python-version }} != "3.8" ]]; then + echo "Sleeping for 5 minutes to stagger the start of the workflow..." + sleep 5m + fi + - name: Checkout uses: actions/checkout@v6 @@ -31,6 +40,7 @@ jobs: run: | sudo apt-get update sudo apt-get install castxml clang cmake git + sudo apt-get install freeglut3-dev libglew-dev mesa-utils openbox xauth xorg - name: Setup Miniconda Python ${{ matrix.python-version }} uses: conda-incubator/setup-miniconda@v3 From 9303945d65aee477381fc38af76d1e1d0877e46b Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 27 Mar 2026 10:56:30 +0000 Subject: [PATCH 17/23] #71 Verbose conda install --- .github/workflows/test-cells-conda.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index 3cb1221..7684bad 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -28,7 +28,7 @@ jobs: steps: - name: Staggered sleep run: | - if [[ ${{ matrix.python-version }} != "3.8" ]]; then + if [[ "${{ matrix.python-version }}" != '3.8' ]]; then echo "Sleeping for 5 minutes to stagger the start of the workflow..." sleep 5m fi @@ -59,7 +59,7 @@ jobs: - name: Install requirements run: | conda clean --all --yes - conda install --yes --file conda/requirements.txt + conda install --yes -vvv --file conda/requirements.txt working-directory: examples/cells - name: Set config paths From 17c3439475db4dbe0eee57922ee015c6038cdd00 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 27 Mar 2026 11:16:58 +0000 Subject: [PATCH 18/23] #71 Adjust conda channel priority --- .github/workflows/test-cells-conda.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index 7684bad..8e30c9f 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -59,7 +59,11 @@ jobs: - name: Install requirements run: | conda clean --all --yes - conda install --yes -vvv --file conda/requirements.txt + conda config --remove channels conda-forge + conda config --add channels conda-forge + conda config --set channel_priority strict + conda config --get channels + conda install --yes -vv --file conda/requirements.txt working-directory: examples/cells - name: Set config paths From 10f13d12e09936fb229b63fce8d82bde39261755 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 27 Mar 2026 11:39:50 +0000 Subject: [PATCH 19/23] #71 Reduce conda test stagger time --- .github/workflows/test-cells-conda.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index 8e30c9f..73fb43e 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -28,9 +28,9 @@ jobs: steps: - name: Staggered sleep run: | - if [[ "${{ matrix.python-version }}" != '3.8' ]]; then - echo "Sleeping for 5 minutes to stagger the start of the workflow..." - sleep 5m + if [[ "${{ matrix.python-version }}" == '3.8' ]]; then + echo "Sleeping for 3 minutes to stagger the start of the workflow..." + sleep 3m fi - name: Checkout From a93655d61e882200eabb12109afdebc34c326268 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 27 Mar 2026 11:46:53 +0000 Subject: [PATCH 20/23] #71 Simplify conda prepend channel --- .github/workflows/test-cells-conda.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index 73fb43e..eac1ee9 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -59,8 +59,7 @@ jobs: - name: Install requirements run: | conda clean --all --yes - conda config --remove channels conda-forge - conda config --add channels conda-forge + conda config --prepend channels conda-forge conda config --set channel_priority strict conda config --get channels conda install --yes -vv --file conda/requirements.txt From 67ad22439174c3cee1a3a70657f5baa063c1ad02 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 27 Mar 2026 12:25:54 +0000 Subject: [PATCH 21/23] #71 Try defaults channel for conda-build on 3.12 --- .github/workflows/test-cells-conda.yml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index eac1ee9..a423b69 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -15,7 +15,8 @@ jobs: fail-fast: false max-parallel: 2 matrix: - python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] + python-version: ["3.12"] + # python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] concurrency: group: test-cells-conda-${{ github.ref }}-${{ matrix.python-version }} @@ -65,6 +66,13 @@ jobs: conda install --yes -vv --file conda/requirements.txt working-directory: examples/cells + - name: Install conda-build tools + run: | + conda config --prepend channels defaults + conda config --set channel_priority strict + conda config --get channels + conda install boa conda-build conda-verify + - name: Set config paths run: | echo "CMAKE_PREFIX_PATH=$CONDA_PREFIX;$CMAKE_PREFIX_PATH" >> $GITHUB_ENV @@ -91,9 +99,6 @@ jobs: grep "Unknown class" build/cppwg.log working-directory: examples/cells - - name: Install conda-build tools - run: conda install boa conda-build conda-verify - - name: Build run: | conda build recipe -m variants/python${{ matrix.python-version }}.yaml --output-folder ./build From 042dc0a01246cccad49019d63f2ac9fe09a5d712 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 27 Mar 2026 12:30:35 +0000 Subject: [PATCH 22/23] #71 Try flexible channel priorities for conda-build on 3.12 --- .github/workflows/test-cells-conda.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index a423b69..c3c03c4 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -68,10 +68,9 @@ jobs: - name: Install conda-build tools run: | - conda config --prepend channels defaults - conda config --set channel_priority strict + conda config --set channel_priority flexible conda config --get channels - conda install boa conda-build conda-verify + conda install --yes -vv boa conda-build conda-verify - name: Set config paths run: | From e48bf20014cb9992a3fe2a438e7e4b06d484bf8a Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Fri, 27 Mar 2026 14:20:21 +0000 Subject: [PATCH 23/23] #71 Run all conda tests --- .github/workflows/test-cells-conda.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/test-cells-conda.yml b/.github/workflows/test-cells-conda.yml index c3c03c4..7a4e1e4 100644 --- a/.github/workflows/test-cells-conda.yml +++ b/.github/workflows/test-cells-conda.yml @@ -15,8 +15,7 @@ jobs: fail-fast: false max-parallel: 2 matrix: - python-version: ["3.12"] - # python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] concurrency: group: test-cells-conda-${{ github.ref }}-${{ matrix.python-version }}