From ba4897fa64b9f6e0150996594c8d30fd8ffafec1 Mon Sep 17 00:00:00 2001 From: Enrico Minack Date: Mon, 21 Oct 2024 11:36:42 +0200 Subject: [PATCH] Add Python 3.13 support (#566) Fixes #630. --- .github/actions/test/action.yml | 10 +++++----- .github/workflows/ci-cd.yml | 6 +++--- composite/action.yml | 2 +- linux/action.yml | 2 +- macos/action.yml | 2 +- python/requirements-3.10.txt | 4 ++-- python/requirements-3.11.txt | 4 ++-- python/requirements-3.12.txt | 4 ++-- python/requirements-3.13.txt | 18 ++++++++++++++++++ python/requirements-3.7.txt | 2 +- python/requirements-3.8.txt | 4 ++-- python/requirements-3.9.txt | 4 ++-- python/requirements-post-3.7.txt | 4 ++-- python/requirements.txt | 2 +- windows/action.yml | 2 +- windows/bash/action.yml | 2 +- 16 files changed, 45 insertions(+), 27 deletions(-) create mode 100644 python/requirements-3.13.txt diff --git a/.github/actions/test/action.yml b/.github/actions/test/action.yml index db5bfc08..ddfb15e1 100644 --- a/.github/actions/test/action.yml +++ b/.github/actions/test/action.yml @@ -19,16 +19,16 @@ runs: sudo apt-get update sudo apt-get install language-pack-en language-pack-de shell: bash - + - name: Setup Python if: inputs.python-version != 'installed' uses: actions/setup-python@v5 with: python-version: ${{ inputs.python-version }} - + - name: Checkout uses: actions/checkout@v4 - + - name: Detect OS id: os env: @@ -47,7 +47,7 @@ runs: esac echo "date=$(date +%Y%m%d 2> /dev/null || true)" >> $GITHUB_OUTPUT shell: bash - + - name: Cache PIP Packages uses: actions/cache@v4 id: cache @@ -59,7 +59,7 @@ runs: ${{ inputs.os }}-pip-test-${{ inputs.python-version }}-${{ hashFiles('**/requirements.txt', '**/constraints.txt') }}- ${{ inputs.os }}-pip-test-${{ inputs.python-version }}- ${{ inputs.os }}-pip-test- - + - name: Install Python dependencies run: | python -m venv "$RUNNER_TEMP/venv" diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index a347e727..da95dd5b 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -38,7 +38,7 @@ jobs: uses: "./.github/workflows/test-os.yml" with: os: '["macos-12", "macos-13", "macos-14", "macos-15"]' - python-version: '["3.10", "3.11", "3.12", "installed"]' + python-version: '["3.10", "3.11", "3.12", "3.13", "installed"]' include: > [ {"os": "macos-12", "python-version": "3.8"}, @@ -52,7 +52,7 @@ jobs: uses: "./.github/workflows/test-os.yml" with: os: '["ubuntu-20.04", "ubuntu-22.04", "ubuntu-24.04"]' - python-version: '["3.9", "3.10", "3.11", "3.12", "installed"]' + python-version: '["3.9", "3.10", "3.11", "3.12", "3.13", "installed"]' include: > [ {"os": "ubuntu-20.04", "python-version": "3.7"}, @@ -65,7 +65,7 @@ jobs: uses: "./.github/workflows/test-os.yml" with: os: '["windows-2019", "windows-2022"]' - python-version: '["3.8", "3.9", "3.10", "3.11", "3.12", "installed"]' + python-version: '["3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "installed"]' include: '[{"os": "windows-2019", "python-version": "3.7"}]' publish: diff --git a/composite/action.yml b/composite/action.yml index a9da1709..938f950e 100644 --- a/composite/action.yml +++ b/composite/action.yml @@ -218,7 +218,7 @@ runs: continue-on-error: true with: path: ${{ steps.os.outputs.pip-cache }} - key: enricomi-publish-action-${{ runner.os }}-${{ runner.arch }}-pip-${{ steps.python.outputs.version }}-e594996205319a7990b3a4ec677d10a3 + key: enricomi-publish-action-${{ runner.os }}-${{ runner.arch }}-pip-${{ steps.python.outputs.version }}-1a7833c49f5935a970bc661e3c45aa2a - name: Create virtualenv id: venv diff --git a/linux/action.yml b/linux/action.yml index b0e5844c..59cacbad 100644 --- a/linux/action.yml +++ b/linux/action.yml @@ -194,7 +194,7 @@ runs: continue-on-error: true with: path: '~/.cache/pip' - key: enricomi-publish-action-${{ runner.os }}-${{ runner.arch }}-pip-${{ steps.python.outputs.version }}-e594996205319a7990b3a4ec677d10a3 + key: enricomi-publish-action-${{ runner.os }}-${{ runner.arch }}-pip-${{ steps.python.outputs.version }}-1a7833c49f5935a970bc661e3c45aa2a - name: Create virtualenv id: venv diff --git a/macos/action.yml b/macos/action.yml index 21cf5260..af0acdf0 100644 --- a/macos/action.yml +++ b/macos/action.yml @@ -194,7 +194,7 @@ runs: continue-on-error: true with: path: '~/Library/Caches/pip' - key: enricomi-publish-action-${{ runner.os }}-${{ runner.arch }}-pip-${{ steps.python.outputs.version }}-e594996205319a7990b3a4ec677d10a3 + key: enricomi-publish-action-${{ runner.os }}-${{ runner.arch }}-pip-${{ steps.python.outputs.version }}-1a7833c49f5935a970bc661e3c45aa2a - name: Create virtualenv id: venv diff --git a/python/requirements-3.10.txt b/python/requirements-3.10.txt index 118eb45a..2b60dc2f 100644 --- a/python/requirements-3.10.txt +++ b/python/requirements-3.10.txt @@ -1,13 +1,13 @@ humanize==4.9.0 junitparser==3.1.2 -lxml==5.1.0 +lxml==5.3.0 psutil==5.9.8 PyGithub==2.2.0 Deprecated==1.2.14 wrapt==1.16.0 PyJWT==2.8.0 PyNaCl==1.5.0 - cffi==1.16.0 + cffi==1.17.1 pycparser==2.22 requests==2.32.3 certifi==2024.7.4 diff --git a/python/requirements-3.11.txt b/python/requirements-3.11.txt index 118eb45a..2b60dc2f 100644 --- a/python/requirements-3.11.txt +++ b/python/requirements-3.11.txt @@ -1,13 +1,13 @@ humanize==4.9.0 junitparser==3.1.2 -lxml==5.1.0 +lxml==5.3.0 psutil==5.9.8 PyGithub==2.2.0 Deprecated==1.2.14 wrapt==1.16.0 PyJWT==2.8.0 PyNaCl==1.5.0 - cffi==1.16.0 + cffi==1.17.1 pycparser==2.22 requests==2.32.3 certifi==2024.7.4 diff --git a/python/requirements-3.12.txt b/python/requirements-3.12.txt index 118eb45a..2b60dc2f 100644 --- a/python/requirements-3.12.txt +++ b/python/requirements-3.12.txt @@ -1,13 +1,13 @@ humanize==4.9.0 junitparser==3.1.2 -lxml==5.1.0 +lxml==5.3.0 psutil==5.9.8 PyGithub==2.2.0 Deprecated==1.2.14 wrapt==1.16.0 PyJWT==2.8.0 PyNaCl==1.5.0 - cffi==1.16.0 + cffi==1.17.1 pycparser==2.22 requests==2.32.3 certifi==2024.7.4 diff --git a/python/requirements-3.13.txt b/python/requirements-3.13.txt new file mode 100644 index 00000000..2b60dc2f --- /dev/null +++ b/python/requirements-3.13.txt @@ -0,0 +1,18 @@ +humanize==4.9.0 +junitparser==3.1.2 +lxml==5.3.0 +psutil==5.9.8 +PyGithub==2.2.0 + Deprecated==1.2.14 + wrapt==1.16.0 + PyJWT==2.8.0 + PyNaCl==1.5.0 + cffi==1.17.1 + pycparser==2.22 + requests==2.32.3 + certifi==2024.7.4 + charset-normalizer==3.3.2 + idna==3.7 + urllib3==2.2.2 + typing_extensions==4.12.2 + urllib3==2.2.2 diff --git a/python/requirements-3.7.txt b/python/requirements-3.7.txt index 5e51fed6..27a8d3d3 100644 --- a/python/requirements-3.7.txt +++ b/python/requirements-3.7.txt @@ -3,7 +3,7 @@ humanize==4.6.0 typing_extensions==4.7.1 zipp==3.15.0 junitparser==3.1.2 -lxml==5.1.0 +lxml==5.3.0 psutil==5.9.8 PyGithub==2.2.0 Deprecated==1.2.14 diff --git a/python/requirements-3.8.txt b/python/requirements-3.8.txt index 118eb45a..2b60dc2f 100644 --- a/python/requirements-3.8.txt +++ b/python/requirements-3.8.txt @@ -1,13 +1,13 @@ humanize==4.9.0 junitparser==3.1.2 -lxml==5.1.0 +lxml==5.3.0 psutil==5.9.8 PyGithub==2.2.0 Deprecated==1.2.14 wrapt==1.16.0 PyJWT==2.8.0 PyNaCl==1.5.0 - cffi==1.16.0 + cffi==1.17.1 pycparser==2.22 requests==2.32.3 certifi==2024.7.4 diff --git a/python/requirements-3.9.txt b/python/requirements-3.9.txt index 118eb45a..2b60dc2f 100644 --- a/python/requirements-3.9.txt +++ b/python/requirements-3.9.txt @@ -1,13 +1,13 @@ humanize==4.9.0 junitparser==3.1.2 -lxml==5.1.0 +lxml==5.3.0 psutil==5.9.8 PyGithub==2.2.0 Deprecated==1.2.14 wrapt==1.16.0 PyJWT==2.8.0 PyNaCl==1.5.0 - cffi==1.16.0 + cffi==1.17.1 pycparser==2.22 requests==2.32.3 certifi==2024.7.4 diff --git a/python/requirements-post-3.7.txt b/python/requirements-post-3.7.txt index 118eb45a..2b60dc2f 100644 --- a/python/requirements-post-3.7.txt +++ b/python/requirements-post-3.7.txt @@ -1,13 +1,13 @@ humanize==4.9.0 junitparser==3.1.2 -lxml==5.1.0 +lxml==5.3.0 psutil==5.9.8 PyGithub==2.2.0 Deprecated==1.2.14 wrapt==1.16.0 PyJWT==2.8.0 PyNaCl==1.5.0 - cffi==1.16.0 + cffi==1.17.1 pycparser==2.22 requests==2.32.3 certifi==2024.7.4 diff --git a/python/requirements.txt b/python/requirements.txt index da2e0001..be04fbc3 100644 --- a/python/requirements.txt +++ b/python/requirements.txt @@ -1,6 +1,6 @@ humanize==4.6.0; python_version <= '3.7' humanize==4.9.0; python_version > '3.7' junitparser==3.1.2 -lxml==5.1.0 +lxml==5.3.0 psutil==5.9.8 PyGithub==2.2.0 diff --git a/windows/action.yml b/windows/action.yml index 2d417029..da3bbe66 100644 --- a/windows/action.yml +++ b/windows/action.yml @@ -193,7 +193,7 @@ runs: continue-on-error: true with: path: '~\AppData\Local\pip\Cache' - key: enricomi-publish-action-${{ runner.os }}-${{ runner.arch }}-pip-${{ steps.python.outputs.version }}-e594996205319a7990b3a4ec677d10a3 + key: enricomi-publish-action-${{ runner.os }}-${{ runner.arch }}-pip-${{ steps.python.outputs.version }}-1a7833c49f5935a970bc661e3c45aa2a - name: Create virtualenv id: venv diff --git a/windows/bash/action.yml b/windows/bash/action.yml index 8c164729..32001640 100644 --- a/windows/bash/action.yml +++ b/windows/bash/action.yml @@ -194,7 +194,7 @@ runs: continue-on-error: true with: path: '~\AppData\Local\pip\Cache' - key: enricomi-publish-action-${{ runner.os }}-${{ runner.arch }}-pip-${{ steps.python.outputs.version }}-e594996205319a7990b3a4ec677d10a3 + key: enricomi-publish-action-${{ runner.os }}-${{ runner.arch }}-pip-${{ steps.python.outputs.version }}-1a7833c49f5935a970bc661e3c45aa2a - name: Create virtualenv id: venv