Commit graph

5 commits

Author SHA1 Message Date
marwin
23798cda01 Alle Abhängigkeiten pinnen; STATICFILES_STORAGE auf STORAGES umstellen
Some checks failed
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Failing after 6s
requirements.txt stand durchgehend auf ">=", die gebaute Version hing also am
Kalendertag statt am Repo. Genau daran ist der letzte Deploy gescheitert.
Jetzt exakt die Versionen, gegen die die Suite grün ist und die produktiv
laufen — Updates werden damit zu einer bewussten Änderung mit CI-Lauf.

Django bleibt auf 6.1: dorthin ist die Instanz ohnehin schon gedriftet, es
läuft, und 4.2 LTS ist seit April 2026 aus dem Support.

Dabei ist aufgefallen, dass Django 5.1 STATICFILES_STORAGE entfernt hat. Die
Einstellung stand noch da und wurde stillschweigend ignoriert, womit
whitenoise auf StaticFilesStorage zurückfiel und Assets unkomprimiert
auslieferte — app.js mit 251 KB statt 62 KB bei jedem kalten Laden.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-28 08:50:47 +00:00
marwin
0b62fbc0de Hotfix: gunicorn/packaging pinnen — gevent-Worker startete nicht mehr
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 53s
Der erste Rebuild seit dem 17.08. zog gunicorn 26.2.0, dessen ggevent.py
packaging.version importiert, während das Paket selbst überhaupt keine
Dependencies deklariert ("Requires:" ist leer). Damit fehlte packaging im
Image und gunicorn brach beim Start ab:

    Error: class uri 'gevent' invalid or not found
    ModuleNotFoundError: No module named 'packaging'

Beides wandert nach requirements.txt, und das Dockerfile installiert
gunicorn nicht mehr ungepinnt nebenher — sonst kann der nächste Rebuild den
Worker wieder unter uns austauschen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-28 08:34:27 +00:00
marwin
391d733c1b Use gevent workers in gunicorn to fix SSE blocking
All checks were successful
Build and push Docker image / build (push) Successful in 31s
Test / test (push) Successful in 15s
SSE connections for radio streams were blocking sync gunicorn workers,
leaving the app unresponsive. Switching to gevent with 4 workers and
a higher timeout fixes concurrent SSE + normal request handling.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 19:15:01 +01:00
Marwin Schulz
2bd83f6315 Add podcast feature with feed management, Docker cron, and ebook reader assets
All checks were successful
Build and push Docker image / build (push) Successful in 12s
Test / test (push) Successful in 13s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 13:39:59 +01:00
marwin
8c3eec4ca1 Initial commit 2026-03-16 19:19:22 +01:00