From a1df468d05624ade171ea56243ef65f3999faa61 Mon Sep 17 00:00:00 2001 From: Thierry RAMORASOAVINA Date: Mon, 28 Oct 2024 16:23:00 +0100 Subject: [PATCH 1/2] Add support for python 3.13 (for tests) Build & release are still done against python 3.12 --- .github/workflows/conda.yml | 2 +- .github/workflows/dev-docker.yml | 4 ++-- .github/workflows/unit-tests.yml | 2 +- packaging/docker/khiopspydev/Dockerfile.ubuntu | 5 +++-- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/conda.yml b/.github/workflows/conda.yml index 80200978..e7f59c68 100644 --- a/.github/workflows/conda.yml +++ b/.github/workflows/conda.yml @@ -63,7 +63,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] + python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13'] env: - {os: ubuntu-20.04, json-image: '{"image": null}'} - {os: ubuntu-22.04, json-image: '{"image": null}'} diff --git a/.github/workflows/dev-docker.yml b/.github/workflows/dev-docker.yml index e9bc8e2f..2bf7f0b4 100644 --- a/.github/workflows/dev-docker.yml +++ b/.github/workflows/dev-docker.yml @@ -4,7 +4,7 @@ env: DEFAULT_KHIOPS_REVISION: 10.2.3 DEFAULT_IMAGE_INCREMENT: 0 DEFAULT_SERVER_REVISION: main - DEFAULT_PYTHON_VERSIONS: 3.8 3.9 3.10 3.11 3.12 + DEFAULT_PYTHON_VERSIONS: 3.8 3.9 3.10 3.11 3.12 3.13 on: pull_request: paths: [packaging/docker/khiopspydev/Dockerfile.*, .github/workflows/dev-docker.yml] @@ -28,7 +28,7 @@ on: description: Set as 'latest' python-versions: type: string - default: 3.8 3.9 3.10 3.11 3.12 + default: 3.8 3.9 3.10 3.11 3.12 3.13 description: Python versions to support server-revision: type: string diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 6db87707..f010297b 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -30,7 +30,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] + python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13'] container: # 'latest' default image tag cannot be set as an environment variable, # because the `env` context is only accessible at the step level; diff --git a/packaging/docker/khiopspydev/Dockerfile.ubuntu b/packaging/docker/khiopspydev/Dockerfile.ubuntu index 4720219f..5a9b8cf3 100644 --- a/packaging/docker/khiopspydev/Dockerfile.ubuntu +++ b/packaging/docker/khiopspydev/Dockerfile.ubuntu @@ -41,8 +41,9 @@ RUN true \ ARG PYTHON_VERSIONS RUN /bin/bash -c 'for version in ${PYTHON_VERSIONS}; \ do \ - /root/miniforge3/bin/conda create -y -n py${version} python=${version}; \ - /root/miniforge3/bin/conda create -y -n py${version}_conda python=${version}; \ + # setuptools is a strong requirement for khiops-python. Force its installation because it is omitted since python 3.13 + /root/miniforge3/bin/conda create -y -n py${version} python=${version} setuptools; \ + /root/miniforge3/bin/conda create -y -n py${version}_conda python=${version} setuptools; \ /root/miniforge3/bin/conda install -y -n py${version}_conda -c khiops-dev khiops-core=$(echo ${KHIOPS_REVISION} | tr -d "-") ; \ done' From 1f9d475b89b81e4caa4a1aec2fba93b92d4e2b64 Mon Sep 17 00:00:00 2001 From: Thierry RAMORASOAVINA Date: Tue, 19 Nov 2024 00:12:55 +0100 Subject: [PATCH 2/2] Update the test matrix for the Conda package Remove the obsolete macos-12 environment and add the new macos-15 one. --- .github/workflows/conda.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/conda.yml b/.github/workflows/conda.yml index e7f59c68..0b2ab85b 100644 --- a/.github/workflows/conda.yml +++ b/.github/workflows/conda.yml @@ -71,9 +71,9 @@ jobs: - {os: ubuntu-22.04, json-image: '{"image": "rockylinux:9"}'} - {os: windows-2019, json-image: '{"image": null}'} - {os: windows-2022, json-image: '{"image": null}'} - - {os: macos-12, json-image: '{"image": null}'} - {os: macos-13, json-image: '{"image": null}'} - {os: macos-14, json-image: '{"image": null}'} + - {os: macos-15, json-image: '{"image": null}'} runs-on: ${{ matrix.env.os }} container: ${{ fromJSON(matrix.env.json-image) }} steps: