From 4551554267d2397c128236f688f8cad32051bf51 Mon Sep 17 00:00:00 2001 From: Matthieu Houdebine Date: Sun, 8 Nov 2026 14:45:50 +0100 Subject: [PATCH] Drop Python 3.9 support Python 3.9 is EOL since October 2025 --- .github/workflows/simple-program-linux.yml | 2 +- .github/workflows/simple-program-macos.yml | 2 +- .github/workflows/simple-program-windows.yml | 2 +- .github/workflows/system-monitor-linux.yml | 2 +- .github/workflows/system-monitor-macos.yml | 2 +- .github/workflows/system-monitor-windows.yml | 2 +- library/pythoncheck.py | 2 +- requirements.txt | 11 ++++------- 8 files changed, 11 insertions(+), 14 deletions(-) diff --git a/.github/workflows/simple-program-linux.yml b/.github/workflows/simple-program-linux.yml index cef20978b..9a6229d70 100644 --- a/.github/workflows/simple-program-linux.yml +++ b/.github/workflows/simple-program-linux.yml @@ -19,7 +19,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.14"] + python-version: ["3.10", "3.14"] steps: - uses: actions/checkout@v7 diff --git a/.github/workflows/simple-program-macos.yml b/.github/workflows/simple-program-macos.yml index 637267a38..32a51f89f 100644 --- a/.github/workflows/simple-program-macos.yml +++ b/.github/workflows/simple-program-macos.yml @@ -19,7 +19,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.14"] + python-version: ["3.10", "3.14"] steps: - uses: actions/checkout@v7 diff --git a/.github/workflows/simple-program-windows.yml b/.github/workflows/simple-program-windows.yml index b3f1a4514..7a368c90b 100644 --- a/.github/workflows/simple-program-windows.yml +++ b/.github/workflows/simple-program-windows.yml @@ -19,7 +19,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.14"] + python-version: ["3.10", "3.14"] steps: - uses: actions/checkout@v7 diff --git a/.github/workflows/system-monitor-linux.yml b/.github/workflows/system-monitor-linux.yml index 379010671..c8265cb63 100644 --- a/.github/workflows/system-monitor-linux.yml +++ b/.github/workflows/system-monitor-linux.yml @@ -19,7 +19,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.14"] + python-version: ["3.10", "3.14"] theme: [ "3.5inchTheme2" ] steps: diff --git a/.github/workflows/system-monitor-macos.yml b/.github/workflows/system-monitor-macos.yml index 77ee19691..f2104a7a1 100644 --- a/.github/workflows/system-monitor-macos.yml +++ b/.github/workflows/system-monitor-macos.yml @@ -19,7 +19,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.14"] + python-version: ["3.10", "3.14"] theme: [ "3.5inchTheme2" ] steps: diff --git a/.github/workflows/system-monitor-windows.yml b/.github/workflows/system-monitor-windows.yml index 2700563c9..2d9bf577e 100644 --- a/.github/workflows/system-monitor-windows.yml +++ b/.github/workflows/system-monitor-windows.yml @@ -19,7 +19,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.14"] + python-version: ["3.10", "3.14"] theme: [ "3.5inchTheme2" ] steps: diff --git a/library/pythoncheck.py b/library/pythoncheck.py index 453839971..feb6a16e4 100644 --- a/library/pythoncheck.py +++ b/library/pythoncheck.py @@ -23,7 +23,7 @@ import sys # Oldest / newest version supported -MIN_PYTHON = (3, 9) +MIN_PYTHON = (3, 10) MAX_PYTHON = (3, 14) diff --git a/requirements.txt b/requirements.txt index 67b85aab9..9fe576037 100644 --- a/requirements.txt +++ b/requirements.txt @@ -16,15 +16,13 @@ darkdetect~=0.8.0 # To detect if the user is using Dark Mode pywinstyles~=1.8; sys_platform=="win32" # Windows only: apply color theme to title bar # HTTP library -requests~=2.32.5; python_version < "3.10" -requests~=2.34.2; python_version >= "3.10" +requests~=2.34.2 # Image generation -Pillow~=11.3.0; python_version < "3.10" # For Python 3.9, Pillow 11.x is the latest supported -Pillow~=13.0.0; python_version >= "3.10" # For Python 3.10+, use latest Pillow +Pillow~=12.3.0; python_version < "3.11" # For Python 3.10, Pillow 12.x is the latest supported +Pillow~=13.0.0; python_version >= "3.11" # For Python 3.11+, use latest Pillow # Efficient image serialization -numpy~=2.0.2; python_version < "3.10" # For Python 3.9, numpy 2.0.x is the latest supported numpy~=2.2.6; python_version == "3.10" # For Python 3.10, numpy 2.2.x is the latest supported numpy~=2.4.4; python_version == "3.11" # For Python 3.11, numpy 2.2.x is the latest supported numpy~=2.5.4; python_version > "3.11" # For Python > 3.11, use latest numpy @@ -42,6 +40,5 @@ pyamdgpuinfo~=2.1.6; sys_platform=="linux" and python_version <= "3.12" pyadl~=0.1; sys_platform=="win32" # Following packages are for LibreHardwareMonitor integration on Windows -pythonnet~=3.0.5; sys_platform=="win32" and python_version < "3.10" # For Python 3.9, pythonnet 3.0.x is the latest supported -pythonnet~=3.1.0; sys_platform=="win32" and python_version >= "3.10" # For Python 3.10+, use latest pythonnet +pythonnet~=3.1.0 pywin32>=312; sys_platform=="win32"