Apply PR #761: Upgrade to Python 3.12 and update dependencies

- Update Python version from 3.9/3.10 to 3.12 across all platforms
- Upgrade Flask from 3.0.0 to 3.1.2
- Upgrade requests from 2.31.0 to 2.32.5
- Upgrade waitress from 2.1.2 to 3.0.2
- Upgrade pyyaml from 6.0 to 6.0.2
- Update documentation to reflect Python 3.12+ requirement
- Update GitHub Actions workflows for macOS (ARM/Intel) and Windows
- Update Dockerfile base image to python:3.12-slim
- Update Windows setup script to require Python 3.12+

This addresses CVE's in requests and waitress, and ensures compatibility with
Python 3.12 which provides improved performance and security.
This commit is contained in:
Admin9705
2026-01-22 18:00:28 -05:00
parent 34e0fbbe03
commit dcee82748b
8 changed files with 14 additions and 14 deletions
+2 -2
View File
@@ -25,10 +25,10 @@ jobs:
with:
fetch-depth: 0
- name: Set up Python 3.9
- name: Set up Python 3.12
uses: actions/setup-python@v4
with:
python-version: '3.9'
python-version: '3.12'
- name: Install dependencies
run: |
+2 -2
View File
@@ -25,10 +25,10 @@ jobs:
with:
fetch-depth: 0
- name: Set up Python 3.9
- name: Set up Python 3.12
uses: actions/setup-python@v4
with:
python-version: '3.9'
python-version: '3.12'
- name: Install dependencies
run: |
+1 -1
View File
@@ -37,7 +37,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
python-version: '3.12'
- name: Install dependencies
run: |
+1 -1
View File
@@ -1,4 +1,4 @@
FROM python:3.9-slim
FROM python:3.12-slim
WORKDIR /app
@@ -110,8 +110,8 @@ def check_requirements():
# Check Python version
python_version = sys.version_info
print(f"Python version: {python_version.major}.{python_version.minor}.{python_version.micro}")
if python_version.major < 3 or (python_version.major == 3 and python_version.minor < 9):
print("WARNING: Huntarr requires Python 3.9 or higher")
if python_version.major < 3 or (python_version.major == 3 and python_version.minor < 12):
print("WARNING: Huntarr requires Python 3.12 or higher")
requirements_met = False
# Check for pywin32
+1 -1
View File
@@ -239,7 +239,7 @@
<p>If you're familiar with Python and want to run Huntarr from source:</p>
<ol>
<li>Ensure you have Python 3.9+ and Git installed on your system</li>
<li>Ensure you have Python 3.12+ and Git installed on your system</li>
<li>Clone the repository:
<pre class="terminal"><code class="command-prompt">git clone https://github.com/plexguide/Huntarr.io.git</code></pre>
</li>
+1 -1
View File
@@ -58,7 +58,7 @@ If you encounter issues:
The macOS installers are built automatically using GitHub Actions with the following process:
1. Python 3.9 environment is set up on a macOS runner
1. Python 3.12 environment is set up on a macOS runner
2. The Huntarr.io icon is converted to macOS .icns format
3. PyInstaller bundles the application into a native macOS .app
4. A PKG installer is created using macOS pkgbuild
+4 -4
View File
@@ -1,6 +1,6 @@
Flask==3.0.0
requests==2.31.0
waitress==2.1.2
Flask==3.1.2
requests==2.32.5
waitress==3.0.2
bcrypt==4.1.2
qrcode[pil]==7.4.2 # Added qrcode with PIL support
pyotp==2.9.0 # Added pyotp
@@ -8,4 +8,4 @@ pytz==2023.3 # Added for timezone support
pywin32==308; sys_platform == 'win32' # For Windows service support
apprise==1.6.0 # Added for notification support
markdown==3.4.3 # Required by apprise
pyyaml==6.0 # Required by apprise
pyyaml==6.0.2 # Required by apprise