Skip to content

build: bump python from 3.11-slim to 3.14-slim#68

Merged
GeiserX merged 3 commits intomasterfrom
feat/python-3.14
Feb 7, 2026
Merged

build: bump python from 3.11-slim to 3.14-slim#68
GeiserX merged 3 commits intomasterfrom
feat/python-3.14

Conversation

@GeiserX
Copy link
Owner

@GeiserX GeiserX commented Feb 7, 2026

Summary

  • Bump Python base image from 3.11-slim to 3.14-slim in both Dockerfile and Dockerfile.viewer
  • Update pyproject.toml: requires-python >= 3.14, classifiers, ruff target-version = "py314"
  • Update CI workflows (tests, lint) to run on Python 3.14
  • Fix docker-publish-dev workflow to skip Dependabot PRs (they lack secrets for Docker Hub login)

All dependencies have pre-built cp314 wheels:

  • cryptg 0.5.2: cp314 wheel available
  • psycopg2-binary 2.9.11: cp314 wheel available
  • greenlet 3.3.1: cp314 wheel available
  • asyncpg, SQLAlchemy, pydantic-core, etc.: all have cp314 wheels

Supersedes #67

Test plan

  • Both Docker images build successfully locally with Python 3.14
  • CI passes (tests, lint, CodeQL, dev image build)
  • Dev deployment on geiserback: backup runs, viewer responds, listener works
  • No Python 3.14 deprecation warnings in container logs

- Update both Dockerfiles to use python:3.14-slim base image
- Update pyproject.toml: requires-python, classifiers, ruff target-version
- Update CI workflows (tests, lint) to use Python 3.14
- Fix docker-publish-dev workflow to skip Dependabot PRs (no secrets access)

Supersedes #67
@github-actions
Copy link

github-actions bot commented Feb 7, 2026

🐳 Dev images published!

  • drumsergio/telegram-archive:dev
  • drumsergio/telegram-archive-viewer:dev

The dev/test instance will pick up these changes automatically (Portainer GitOps).

To test locally:

docker pull drumsergio/telegram-archive:dev
docker pull drumsergio/telegram-archive-viewer:dev

- Remove string quotes from forward references (UP037) - PEP 649 deferred annotations
- Replace Optional[X] with X | None (UP045)
- Remove unnecessary default type args on AsyncGenerator (UP043)
- Fix asyncio.get_event_loop() in tests (removed in Python 3.14)
- Remove unused Optional import from models
@github-actions
Copy link

github-actions bot commented Feb 7, 2026

🐳 Dev images published!

  • drumsergio/telegram-archive:dev
  • drumsergio/telegram-archive-viewer:dev

The dev/test instance will pick up these changes automatically (Portainer GitOps).

To test locally:

docker pull drumsergio/telegram-archive:dev
docker pull drumsergio/telegram-archive-viewer:dev

Unparenthesized except clauses are now valid in Python 3.14.
@github-actions
Copy link

github-actions bot commented Feb 7, 2026

🐳 Dev images published!

  • drumsergio/telegram-archive:dev
  • drumsergio/telegram-archive-viewer:dev

The dev/test instance will pick up these changes automatically (Portainer GitOps).

To test locally:

docker pull drumsergio/telegram-archive:dev
docker pull drumsergio/telegram-archive-viewer:dev

@GeiserX GeiserX merged commit 7be3177 into master Feb 7, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant