You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Upgrade the project from Python 3.13 to Python 3.14. PR #1139 (Renovate) bumped requires-python in pyproject.toml and uv.lock but missed all infrastructure changes, causing all CI checks to fail (build-container, python-module-install, tox, pre-commit, can-be-merged).
This issue tracks all required changes to fully migrate to Python 3.14.
Root Cause of CI Failures
The Renovate PR only changes pyproject.toml (requires-python = "==3.14.*") and regenerates uv.lock with cp314 wheels. The container image and all CI infrastructure still target Python 3.13, so uv sync and every check that needs a matching interpreter fail.
Changes Required
1. Dockerfile (critical — blocks all CI)
File:Dockerfile
Line 36: Change python3.13-devel → python3.14-devel
Line 61: Change ENV UV_PYTHON=python3.13 → ENV UV_PYTHON=python3.14
Verify:"python3.14-devel is available in quay.io/podman/stable:v5 (Fedora 42 repos — confirmed available via dnf install python3.14-devel)
Note:docs/ files are AI-generated by docsfy — regenerate with docsfy after code changes rather than editing manually.
5. Remove deprecated from __future__ import annotations (19 files)
Python 3.14 implements PEP 649 (deferred evaluation of annotations), making from __future__ import annotations deprecated. While it still works, it should be removed to avoid deprecation warnings and align with the new behavior.
Summary
Upgrade the project from Python 3.13 to Python 3.14. PR #1139 (Renovate) bumped
requires-pythoninpyproject.tomlanduv.lockbut missed all infrastructure changes, causing all CI checks to fail (build-container,python-module-install,tox,pre-commit,can-be-merged).This issue tracks all required changes to fully migrate to Python 3.14.
Root Cause of CI Failures
The Renovate PR only changes
pyproject.toml(requires-python = "==3.14.*") and regeneratesuv.lockwithcp314wheels. The container image and all CI infrastructure still target Python 3.13, souv syncand every check that needs a matching interpreter fail.Changes Required
1. Dockerfile (critical — blocks all CI)
File:
Dockerfilepython3.13-devel→python3.14-develENV UV_PYTHON=python3.13→ENV UV_PYTHON=python3.14python3.14-develis available inquay.io/podman/stable:v5(Fedora 42 repos — confirmed available viadnf install python3.14-devel)2. pyproject.toml
File:
pyproject.tomlrequires-python = "==3.13.*"→requires-python = "==3.14.*"(already done in PR ci(deps): update python to ==3.14.* #1139)3. uv.lock
File:
uv.lockuv lockafter pyproject.toml change (already done in PR ci(deps): update python to ==3.14.* #1139)cp314wheels available ✅4. Documentation (6 files referencing Python 3.13)
All Python version references need updating:
docs/installation.md— 3 references: "Python3.13.xinterpreter",requires-python = "==3.13.*", "Once Python3.13.xanduvare available"docs/quick-start.md— 1 reference: "Python3.13"docs/docker-deployment.md— 1 reference:ENV UV_PYTHON=python3.135. Remove deprecated
from __future__ import annotations(19 files)Python 3.14 implements PEP 649 (deferred evaluation of annotations), making
from __future__ import annotationsdeprecated. While it still works, it should be removed to avoid deprecation warnings and align with the new behavior.Files (19 total):
webhook_server/libs/ai_cli.pywebhook_server/libs/handlers/pull_request_handler.pywebhook_server/libs/handlers/pull_request_review_handler.pywebhook_server/libs/handlers/issue_comment_handler.pywebhook_server/libs/github_api.pywebhook_server/libs/test_oracle.pywebhook_server/tests/test_clean_rebase_detection.pywebhook_server/tests/test_ai_cli.pywebhook_server/tests/test_json_log_handler.pywebhook_server/tests/test_safe_rotating_handler.pywebhook_server/tests/test_helpers_sanitization.pywebhook_server/tests/test_tool_server.pywebhook_server/tests/test_prepare_retest_welcome_comment.pywebhook_server/tests/test_context.pywebhook_server/tests/test_test_oracle.pywebhook_server/utils/safe_rotating_handler.pywebhook_server/utils/notification_utils.pywebhook_server/utils/helpers.pywebhook_server/web/tool_server.py6. Project memory update
.pi/memory/pattern entry: "FastAPI vwebhook server; Python 3.13" → "Python 3.14"Python 3.14 Compatibility Assessment
No breaking changes found in the codebase:
cgi,telnetlib,aifc, etc.)ast.Num/ast.Str/ast.Bytesusage (removed in 3.14)asyncio.get_event_loop()(deprecated in 3.14)__annotations__access (broken by PEPreturn/break/continueinfinallyblocks (nowSyntaxErrorper PEP 765)Related
Done
Dockerfile:python3.14-develandENV UV_PYTHON=python3.14pyproject.toml:requires-python = "==3.14.*"(done in PR ci(deps): update python to ==3.14.* #1139)uv.lockwith Python 3.14 wheels (done in PR ci(deps): update python to ==3.14.* #1139)from __future__ import annotationsfrom 19 files