From 1672761be71d607fe64f3c7545d70c732766666d Mon Sep 17 00:00:00 2001 From: Frank Harrison Date: Thu, 28 Nov 2024 12:49:47 +0000 Subject: [PATCH] chore(actions): builds a greater range of python versions in the cicd As we will eventually use githuub actions to release the packages we might as well get it building all the release versions we want. --- .github/workflows/wheels.yml | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 8fac063..be1df33 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -15,21 +15,34 @@ jobs: runs-on: ubuntu-latest outputs: include: ${{ steps.set-matrix.outputs.include }} + env: + # Define a range of python version, going back to 3.6 because often the + # Phd-type developer that use tools like tmap don't update their tool + # chains very often, supporting them means that they might better support + # tmap's developement in the future. + # This may change, and probably should. + PYTHON_VERSIONS: "3.6,3.7,3.8,3.9,3.10,3.11,3.12" steps: - uses: actions/checkout@v4 - name: Install cibuildwheel run: pipx install cibuildwheel==2.22.0 - id: set-matrix run: | + # Some notes on this: + # - macos-13 is a amd64 builder. + # - maxos-14 is the default builder which is arm64, probably because + # it's more effecient. + # - We don't yet specifiy arm64 versions on linux, even though AWS + # provides cheaper ec2 instaces running on arm64 cores. /FIXME MATRIX=$( { - cibuildwheel --print-build-identifiers --platform linux \ + cibuildwheel --print-build-identifiers --platform linux --python $PYTHON_VERSIONS \ | jq -nRc '{"only": inputs, "os": "ubuntu-latest"}' \ - && cibuildwheel --print-build-identifiers --platform macos --arch x86_64 \ + && cibuildwheel --print-build-identifiers --platform macos --arch x86_64 --python $PYTHON_VERSIONS \ | jq -nRc '{"only": inputs, "os": "macos-13"}' \ - && cibuildwheel --print-build-identifiers --platform macos --arch arm64 \ + && cibuildwheel --print-build-identifiers --platform macos --arch arm64 --python $PYTHON_VERSIONS \ | jq -nRc '{"only": inputs, "os": "macos-14"}' \ - && cibuildwheel --print-build-identifiers --platform windows \ + && cibuildwheel --print-build-identifiers --platform windows --python $PYTHON_VERSIONS \ | jq -nRc '{"only": inputs, "os": "windows-latest"}' } | jq -sc )