Update-Protokoll
Überblick
Wir haben ein umfassendes Upgrade des Software Stack der Website durchgeführt, um langfristige Wartbarkeit, Sicherheit und Kompatibilität sicherzustellen und die Seite auf die Umstellung von Uberspace 7 (CentOS) auf Uberspace 8 (Arch Linux) vorzubereiten. Die wichtigsten Änderungen:
- Wagtail aktualisiert von
2.14→7.0 - Django aktualisiert von
3.2.12→5.2.5 - PostgreSQL aktualisiert von
13.21→15.3 - Python aktualisiert von
3.7→3.11
Wichtige Komponenten
| Komponente | Alt-Version | Neu-Version | EOL alt | EOL neu |
|---|---|---|---|---|
| Django | 3.2.12 (LTS) | 5.2.5 (LTS) | April 2024 | April 2028 |
| Wagtail | 2.14 | 7.0 (LTS) | Juli 2023 | November 2026 |
| PostgreSQL | 13.21 | 15.3 | November 2025 | November 2027 |
| Python | 3.7 | 3.11 | Juni 2023 | Oktober 2027 |
Migrationsdetails
Wagtail 7.0
- Migration erfolgte über 16 einzelne Feature-Updates
- Erforderte Code-Anpassungen aufgrund:
- Geänderter Import-Strukturen
- Anpassungen im Template-Verhalten
- Änderungen bei StreamField-Rendering
- Veralteter APIs
- Veralteter custom Template-Tags und Hooks
Django 5.2.5
- Wichtige Breaking Changes:
- Regex-basierte URL-Pfade (
url(r'^...')) entfernt und durchpath()bzw.re_path()ersetzt - Middleware- und Settings-Struktur aktualisiert
- Kompatibilitätsanpassungen
- Regex-basierte URL-Pfade (
PostgreSQL 15.3
- Keine Breaking Changes auf ORM-Ebene
- Verbesserte Performance
Python 3.11
- Entfernte veraltete Module
- Kompatibilitätsanpassungen für diverse Libraries (Dependencies)
Nach dem Upgrade
Nach dem Upgrade
- Alle Datenbankmigrationen erfolgreich durchgeführt
- Admin-Oberfläche geprüft (CSV Import + Stichproben aller Seitentypen)
- Python-Kompatibilität für alle internen Module verifiziert (z.B. Terminkalender)
- Virtuelle Umgebung ersetzt
- CI/CD-Pipeline aktualisiert
- Produktionsumgebung neu aufgesetzt
- Systemdienste und Hintergrundservices aktualisiert und neu gestartet
Nächste Schritte
- Gemeinsamer Workshop 2026
- Aktualisierung des Frontends 2026