Wissen / Versionen & Support / Welche TYPO3 Version sollte ich verwenden?
Welche TYPO3-Version sollte ich verwenden?
Grundsätzlich bin ich dafür, eine TYPO3-Installation auf die höchstmögliche sinnvolle LTS-Version zu bringen. Wenn technisch alles dafür spricht, gibt es wenig Grund, nach einem Update direkt wieder eine Version hinterherzuhinken.
Ganz so einfach wie „immer die neueste Version installieren“ ist es trotzdem nicht. Vorher muss geklärt werden, ob die benötigten Extensions verfügbar sind, ob PHP und Datenbank zur Zielversion passen und wo wir uns gerade im TYPO3-Release-Zyklus befinden.
Die richtige Zielversion ist deshalb meistens die aktuellste LTS-Version, die das konkrete Projekt technisch sauber unterstützt.
Warum die aktuellste Version meistens die richtige ist
Jede TYPO3-Version wird nur für einen begrenzten Zeitraum regulär gepflegt. Während dieses Zeitraums gibt es unter anderem Fehlerbehebungen und Sicherheitsupdates. Je später man mit einem Update beginnt, desto kürzer ist anschließend der verbleibende Supportzeitraum der gewählten Version.
Wenn ein Projekt ohne Probleme auf die aktuelle LTS gebracht werden kann, würde ich deshalb normalerweise genau das tun. Es wäre wenig sinnvoll, viel Geld in ein Update zu investieren und anschließend bewusst auf einer Version zu landen, deren reguläre Lebenszeit schon deutlich weiter fortgeschritten ist.
Für produktive Websites würde ich immer die LTS verwenden
TYPO3 veröffentlicht innerhalb einer Major-Version mehrere sogenannte Sprint Releases. Bei TYPO3 12 waren das zum Beispiel 12.0, 12.1, 12.2 und 12.3. Die LTS-Version dieser Reihe ist 12.4.
Für eine normale produktive Kundenwebsite würde ich immer auf die LTS-Version gehen und nicht bewusst auf einem früheren Sprint Release bleiben.
Die LTS ist die Version, auf die die jeweilige Major-Reihe langfristig hinausläuft. Genau dort möchte ich ein Kundenprojekt nach einem Update haben.
Was LTS genau bedeutet, wie lange eine Version unterstützt wird und was anschließend mit ELTS möglich ist, erklären wir in einem eigenen Artikel.
Direkt am Release-Tag aktualisieren? Eher nicht.
Wenn eine neue LTS gerade erst erschienen ist, würde ich bei einem normalen Kundenprojekt ein paar Wochen warten.
Aus Erfahrung kommen direkt nach einem großen Release noch einige Patch-Updates hinterher. Das ist völlig normal. Gerade bei produktiven Websites muss ich aber nicht derjenige sein, der am ersten Tag jede Kombination aus Core, Extensions und Infrastruktur ausprobiert.
Aktuell halten heißt nicht, dass man am Release-Tag vorneweg laufen muss. Ein paar Wochen Abstand sind bei einer neuen LTS meistens vernünftig.
Extensions können die Zielversion begrenzen
Einer der wichtigsten Punkte bei der Wahl der TYPO3-Version sind die Extensions, ohne die die Website nicht richtig funktioniert.
Wenn eine zentrale Extension die neueste TYPO3-Version noch nicht unterstützt, kann ich das nicht einfach ignorieren. Bei einer kleinen eigenen Extension lässt sich die Kompatibilität möglicherweise selbst herstellen. Bei großen Community-Extensions wie news oder Powermail ist das etwas anderes.
Dort hängt man davon ab, welche Version vom Hersteller oder von der Community angeboten wird. Teilweise gibt es für eine neue TYPO3-Version zunächst eine kostenpflichtige Variante, während die frei verfügbare Community-Version noch die vorherige TYPO3-Version unterstützt.
Dann muss der Kunde entscheiden: Möchten wir die kostenpflichtige Extension einsetzen, auf die Unterstützung der freien Version warten oder zunächst auf der vorherigen TYPO3-LTS bleiben?
Eine wichtige Extension, die auf der Zielversion nicht läuft, kann die komplette Versionsentscheidung bestimmen.
„Neueste Version“ ist deshalb nicht immer sofort möglich
Wenn TYPO3 14 technisch die gewünschte Zielversion wäre, Powermail oder eine andere unverzichtbare Extension aber nur für TYPO3 13 sinnvoll verfügbar ist, kann TYPO3 13 vorerst die richtige Entscheidung sein.
Das bedeutet nicht, dass 13 grundsätzlich „besser“ wäre. Es bedeutet nur, dass das konkrete Projekt aktuell nicht vollständig auf 14 gebracht werden kann, ohne an anderer Stelle zusätzliche Entscheidungen oder Kosten auszulösen.
Sobald die benötigten Komponenten verfügbar sind, kann der nächste Schritt nachgeholt werden.
PHP und Datenbank müssen zur TYPO3-Version passen
TYPO3 definiert für jede Version genau, welche PHP- und Datenbankversionen unterstützt werden. Das muss vor einem Update geprüft werden.
Wenn die gewünschte TYPO3-Version beispielsweise eine PHP-Version benötigt, die beim aktuellen Hoster nicht verfügbar ist, lässt sich das Update dort nicht einfach durchführen.
Dann gibt es im Grunde nur zwei Möglichkeiten: Der Hoster stellt die benötigte Umgebung bereit oder das Projekt muss auf eine andere Hosting- beziehungsweise Serverumgebung umziehen.
Dasselbe gilt für die Datenbank.
Die Zielversion muss nicht nur zum TYPO3-Projekt passen, sondern auch auf der vorhandenen Infrastruktur überhaupt laufen können. Die Systemanforderungen sollten deshalb für die jeweilige Version geprüft werden.
Deshalb prüfe ich die Infrastruktur vor dem Update
Zu einer vernünftigen Ersteinschätzung gehört für mich nicht nur die TYPO3-Version. Ich prüfe auch, welche PHP- und Datenbankversion aktuell laufen und welche Möglichkeiten die vorhandene Serverumgebung bietet.
Es wäre ziemlich ärgerlich, erst nach einem halben Update festzustellen, dass die Zielversion auf dem gebuchten Hosting-Paket überhaupt nicht betrieben werden kann.
Solche Dinge gehören vorher geklärt.
Auch der Zeitpunkt im Release-Zyklus spielt eine Rolle
Manchmal lohnt es sich, mit einem Update noch etwas zu warten.
Wenn beispielsweise klar ist, dass die nächste TYPO3-LTS in wenigen Wochen oder Monaten erscheint, würde ich nicht automatisch viel Arbeit investieren, um ein Projekt kurz vorher noch auf eine Version zu bringen, die direkt danach wieder abgelöst wird.
In so einem Fall würde ich mit dem Kunden besprechen, ob die bestehende Installation noch lange genug sicher betrieben werden kann und ob es sinnvoller ist, direkt die kommende LTS abzuwarten.
Die offizielle TYPO3-Roadmap ist dafür sehr hilfreich. Dort lässt sich sehen, wann neue Versionen geplant sind und wie lange bestehende Versionen unterstützt werden.
Ein paar Monate bewusst zu warten kann sinnvoller sein, als zweimal kurz hintereinander ein größeres Update zu bezahlen.
„Wir bleiben einfach auf unserer Version, solange sie läuft“ ist keine gute Strategie
Eine alte TYPO3-Version hört nicht plötzlich auf zu funktionieren, nur weil ihr regulärer Support endet. Genau deshalb werden Updates gerne zu lange aufgeschoben.
Die Website läuft weiter. Das Backend funktioniert. Die Inhalte sind da. Also scheint erstmal alles in Ordnung zu sein.
Das Problem ist, dass irgendwann keine regulären Sicherheitsupdates mehr kommen. Gleichzeitig werden PHP-Versionen älter, Extensions werden nicht mehr gepflegt und der Abstand zu aktuellen TYPO3-Versionen wird immer größer.
Je länger man wartet, desto mehr Änderungen müssen beim späteren Update auf einmal nachgeholt werden.
Das macht das Projekt nicht nur teurer. Eine lange nicht mehr gepflegte Installation wird mit der Zeit auch sicherheitstechnisch unangenehmer.
„Bloß nicht zu neu“ ergibt genauso wenig Sinn
Das andere Extrem ist die Haltung, absichtlich möglichst weit hinter der aktuellen TYPO3-Version zu bleiben, weil eine ältere Version angeblich stabiler sei.
Bei einer frisch veröffentlichten LTS ein paar Wochen zu warten, halte ich für vernünftig. Jahrelang bewusst auf einer alten Version zu bleiben, obwohl die aktuelle LTS vollständig unterstützt wird und alle benötigten Extensions verfügbar sind, bringt dagegen keinen Vorteil.
Dann verkürzt man hauptsächlich den Zeitraum bis zum nächsten notwendigen Update.
Muss jede TYPO3-Version einzeln aktualisiert werden?
Nicht zwingend. Es gibt mittlerweile Werkzeuge und Migrationsmöglichkeiten, mit denen sich bei überschaubaren Projekten auch größere Schritte machen lassen.
Bei kleinen Installationen kann das durchaus sinnvoll sein.
Bei komplexen Legacy-Projekten würde ich trotzdem lieber kontrollierter vorgehen und größere Versionssprünge Schritt für Schritt bearbeiten. So lässt sich besser nachvollziehen, welche Änderung an welcher Stelle Probleme verursacht.
Die Wahl der Zielversion und der technische Weg dorthin sind also zwei unterschiedliche Fragen: Das Ziel kann die aktuelle LTS sein, auch wenn der Weg dorthin über mehrere Zwischenschritte führt.
Welche TYPO3-Version sollte ich also verwenden?
Meine einfache Antwort lautet:
Nimm die höchstmögliche aktuelle LTS-Version, die deine Extensions, deine Serverumgebung und dein Projekt sauber unterstützen.
Wenn gerade eine neue LTS erschienen ist, würde ich ein paar Wochen warten. Wenn die nächste LTS unmittelbar vor der Tür steht, kann es sinnvoll sein, noch etwas länger zu warten. Wenn wichtige Extensions die aktuelle Version noch nicht unterstützen, muss geprüft werden, welche Alternative wirtschaftlich sinnvoll ist.
Was ich nicht machen würde: Eine alte Version nur deshalb behalten, weil sie heute noch läuft.
Die Versionsentscheidung ist normalerweise schnell getroffen, sobald klar ist, was im Projekt steckt, welche Extensions gebraucht werden und welche Umgebung der Server bereitstellen kann.