From 2b1864362e82a26bc73832ca3f7fe1010dd8f0c4 Mon Sep 17 00:00:00 2001 From: Kevin Marchais Date: Mon, 26 Jan 2026 13:38:02 +0100 Subject: [PATCH 1/4] Update conda_build_config.yaml for carma to support Python 3.14 --- carma.recipe/conda_build_config.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/carma.recipe/conda_build_config.yaml b/carma.recipe/conda_build_config.yaml index ee8077a02..a5b366701 100755 --- a/carma.recipe/conda_build_config.yaml +++ b/carma.recipe/conda_build_config.yaml @@ -1,10 +1,9 @@ python: - - 3.8 - - 3.9 - 3.10 - 3.11 - 3.12 - 3.13 + - 3.14 numpy: - 1.26 From 69fbd0bf3a357505c5e929b8bad713a4d237d125 Mon Sep 17 00:00:00 2001 From: Kevin Marchais Date: Mon, 26 Jan 2026 13:41:36 +0100 Subject: [PATCH 2/4] Refactor carma-conda.yml: matrix strategy, PR triggers, API token auth - Consolidate 4 jobs into 1 matrix job - Add PR trigger for carma.recipe/** and workflow file changes - Add upload input (default: true), only upload on workflow_dispatch - Switch from username/password to ANACONDA_API_TOKEN - Update actions to v6/v3 --- .github/workflows/carma-conda.yml | 40 ------------------------------- 1 file changed, 40 deletions(-) delete mode 100644 .github/workflows/carma-conda.yml diff --git a/.github/workflows/carma-conda.yml b/.github/workflows/carma-conda.yml deleted file mode 100644 index 8acb7ef0f..000000000 --- a/.github/workflows/carma-conda.yml +++ /dev/null @@ -1,40 +0,0 @@ -name: Create conda package for carma - -on: - workflow_dispatch: - -jobs: - build: - name: ${{ matrix.os }} - runs-on: ${{ matrix.runner }} - strategy: - fail-fast: false - matrix: - include: - - os: Linux - runner: ubuntu-latest - target-platform: linux-64 - - os: MacOS - runner: macos-latest - target-platform: osx-arm64 - - os: Windows - runner: windows-latest - target-platform: win-64 - - steps: - - uses: actions/checkout@v6 - - - uses: conda-incubator/setup-miniconda@v3 - with: - miniconda-version: latest - activate-environment: packaging - - - name: Conda build and upload - shell: bash -l {0} - env: - ANACONDA_API_TOKEN: ${{ secrets.ANACONDA_API_TOKEN }} - run: | - conda update --all -y - conda install -y python=3.11 conda-build anaconda-client conda-verify - conda-build carma.recipe -c conda-forge -c set3mah --output-folder . - anaconda upload ${{ matrix.target-platform }}/*.conda --force From 1a7fbf34a705bec8c0262529c05488acaf476419 Mon Sep 17 00:00:00 2001 From: Kevin Marchais Date: Mon, 26 Jan 2026 15:17:22 +0100 Subject: [PATCH 3/4] Make carma package Python-version independent carma is a header-only C++ library - it doesn't need Python-specific builds. Changes: - Remove python and numpy from requirements (not needed for headers) - Remove Python version matrix from conda_build_config.yaml - Keep only armadillo and pybind11 as dependencies --- carma.recipe/conda_build_config.yaml | 11 ++--------- carma.recipe/meta.yaml | 6 ------ 2 files changed, 2 insertions(+), 15 deletions(-) diff --git a/carma.recipe/conda_build_config.yaml b/carma.recipe/conda_build_config.yaml index a5b366701..6699be3e1 100755 --- a/carma.recipe/conda_build_config.yaml +++ b/carma.recipe/conda_build_config.yaml @@ -1,9 +1,2 @@ -python: - - 3.10 - - 3.11 - - 3.12 - - 3.13 - - 3.14 - -numpy: - - 1.26 +# No Python matrix needed - carma is a header-only library +# Package is Python-version independent diff --git a/carma.recipe/meta.yaml b/carma.recipe/meta.yaml index 309d89368..9821e0960 100755 --- a/carma.recipe/meta.yaml +++ b/carma.recipe/meta.yaml @@ -13,17 +13,11 @@ requirements: build: - git # [win] - cmake - - python - {{ compiler('cxx') }} - ninja # [win] host: - - python - - pip - armadillo - - numpy>=1.24 - pybind11 run: - - python - armadillo - - numpy>=1.24 - pybind11 From c8ac4f687f69cdf41950bf926010d2fe3af73a70 Mon Sep 17 00:00:00 2001 From: Kevin Marchais Date: Mon, 26 Jan 2026 15:46:55 +0100 Subject: [PATCH 4/4] Remove carma recipe and workflow - use conda-forge instead carma is available on conda-forge as a Python-version independent header-only package. No need to maintain a separate build. --- carma.recipe/bld.bat | 8 -------- carma.recipe/build.sh | 13 ------------- carma.recipe/conda_build_config.yaml | 2 -- carma.recipe/meta.yaml | 23 ----------------------- 4 files changed, 46 deletions(-) delete mode 100644 carma.recipe/bld.bat delete mode 100755 carma.recipe/build.sh delete mode 100755 carma.recipe/conda_build_config.yaml delete mode 100755 carma.recipe/meta.yaml diff --git a/carma.recipe/bld.bat b/carma.recipe/bld.bat deleted file mode 100644 index 07249ba59..000000000 --- a/carma.recipe/bld.bat +++ /dev/null @@ -1,8 +0,0 @@ -cmake -G"Visual Studio 17 2022" ^ - -D CMAKE_BUILD_TYPE:STRING=Release ^ - -D CMAKE_INSTALL_PREFIX=%PREFIX%/Library ^ - -D CARMA_INSTALL_LIB=ON ^ - -S . -B build - -cmake --build build --config Release -cmake --install build diff --git a/carma.recipe/build.sh b/carma.recipe/build.sh deleted file mode 100755 index 9d9a22990..000000000 --- a/carma.recipe/build.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -set -ex - -cd $SRC_DIR - -cmake ${CMAKE_ARGS} -S . -B build \ - -D CMAKE_BUILD_TYPE=Release \ - -D CMAKE_INSTALL_PREFIX:path=$PREFIX \ - -D CARMA_INSTALL_LIB=ON - -cmake --build build --config Release -cmake --install build diff --git a/carma.recipe/conda_build_config.yaml b/carma.recipe/conda_build_config.yaml deleted file mode 100755 index 6699be3e1..000000000 --- a/carma.recipe/conda_build_config.yaml +++ /dev/null @@ -1,2 +0,0 @@ -# No Python matrix needed - carma is a header-only library -# Package is Python-version independent diff --git a/carma.recipe/meta.yaml b/carma.recipe/meta.yaml deleted file mode 100755 index 9821e0960..000000000 --- a/carma.recipe/meta.yaml +++ /dev/null @@ -1,23 +0,0 @@ -package: - name: carma - version: 0.8.0 - -source: - git_url: https://github.com/RUrlus/carma - git_tag: v0.8.0 - -build: - number: 0 - -requirements: - build: - - git # [win] - - cmake - - {{ compiler('cxx') }} - - ninja # [win] - host: - - armadillo - - pybind11 - run: - - armadillo - - pybind11