TYPO3 14.2 - Bugfixes und Verbesserung der Performance

Auch kleinere Bugfixes und Performance-Verbesserungen können eine spürbare Verbesserung auslösen.

Die meisten relevanten Bugfixes von TYPO3 14 wurden auch immer in die Version 13 (und teilweise auch 12) zurückportiert. In diesem Bereich sind primär Bugfixes für TYPO3 14.1 und 14.0 enthalten.

Bugfixes und kleinere Anpassungen

GoodieErweiterung des Events ModifyButtonBarEvent für den Zugriff auf das Request-Objekt.

Zielgruppe: Entwicklung

GoodieDer DatabaseCompare-Prozess kann nun die "Default" Werte im TCA auch für einige weitere TCA-Typen korrekt auswerten und auf Datenbank-Ebene als DEFAULT anwenden.

Zielgruppe: Entwicklung

Einfügung einer neuen internen ArrayUtility::containsOnlyScalarValues() Methode.

Zielgruppe: Entwicklung

URL Parameter bei der kanonischen URL-Erzeugung werden besser ausgewertet um ausgeschlossen zu werden.

Zielgruppe: Entwicklung

Bessere Klassen-Konstruktion für das PreviewRendering, um Probleme mit DI für Extension-Entwicklung zu vermeiden.

Zielgruppe: Entwicklung

Der be:tableList ViewHelper kann nun Datensätze wieder korrekt anzeigen selbst wenn der neue Sprach-Kontext gesetzt ist.

Zielgruppe: Entwicklung

Datensätze die in einer Backend-Layout-colpos nicht erlaubt sind, können nun auch nicht mehr übersetzt werden.

Zielgruppe: Redaktion

Die TypoScript "dot" Notation für "mod.web_list.table.XX.YY" wird wieder korrekt ausgewertet (wurde in v14 refactort).

Zielgruppe: Entwicklung

Der neue AbstractTypolinkBuilder verschluckt nun für die legacy-Implementation keine Werte/Attribute mehr.

Zielgruppe: Entwicklung

Korrektes Escaping der Datensatz-Titel in der Datensatz-Breadcrumb, Erweiterung der Breadcrumb-API für eine "Nur-Text"-Variante.

Zielgruppe: Entwicklung

GoodieDie Inhaltsvorschau im Seitenmodul nutzt nun die Record API vollständig, optimiert die Ausgabe von Listen und HTML Rendering (einige Formatierungen sind nun zugelassen).

Zielgruppe: Integration

GoodieWenn im Layout-Modul nur eine einzige Sprache definiert ist, wird kein Sprachdropdown dargestellt und daraus resultierende Fehler (Zugriffe) werden vermieden.

Zielgruppe: Redaktion

WissenswertVermeidung von Redirects innerhalb von Ajax-Modals im Backend, wenn man nicht (mehr) eingeloggt ist.

Zielgruppe: Entwicklung

GoodieDie Auswertung beim Drücken von der "ESC"-Taste in Backend-Modals wurde überarbeitet, vor allem bei vorhandenen input type=search fokussierten Elementen. Die Nutzung von "ESC" führt nun überall korrekt dazu, dass ein Popup geschlossen werden kann bzw. zuerst ein Suchfeld geleert werden kann.

Zielgruppe: Redaktion

Die ColorPicker-Komponente "alwan" wurde aktualisiert, und die Funktionalität in der Extension-Konfiguration im Backend funktioniert wieder.

Zielgruppe: Redaktion

Vermeidung einer unnötigen "*" Ausgabe, wenn für einen Datei-Upload alle Dateitypen zugelassen sind.

Zielgruppe: Entwicklung

WissenswertBehebung eines relevanten Memory-Leaks innerhalb der JavaScript-Navigationsverwaltung.

Zielgruppe: Entwicklung

Sehr wichtigÜberarbeitung der Modul-Icons und Navigationleiste und Farbdefinitionen im neuen Backend-Design, Umpositionierung des Workspace-Switches in die Seitenleiste (per User-Settings steuerbar). Die FormEngine Tabs nutzen nun eine eigene, scrollbare Sektionsleiste (keine Bootstrap Tabs mehr).

Zielgruppe: Redaktion

Kleine Bugfixes für Randfälle in der neuen Backend-Vorschaufunktion.

Zielgruppe: Entwicklung

Wenn keinerlei Inhaltselemente im "Neues Inhaltselement"-Wizard vorhanden sind (z.b. aufgrund von Rechten) wird eine Hinweisnachricht ausgegeben.

Zielgruppe: Redaktion

GoodieDie Blätterfunktion der Dateiliste ist nun an die anderen Backend-Blätterfunktionen angeglichen.

Zielgruppe: Redaktion

Vermeidung von PHP-Fehlermeldung beim Anklicken von Elementen im neuen Breadcrumb-Menü unter gewissen Umständen.

Zielgruppe: Redaktion

GoodieForcierte DateTime-Objektdarstellung im Layoutmodul hat nun keine Darstellungsprobleme mehr. Zudem wurde eine neue "datetime" Webcomponent hergestellt, mit der relative Zeitangaben machbar sind.

Zielgruppe: Entwicklung

Vermeidung von mehreren gleichzeitigen Lade-Fortschrittsbalken.

Zielgruppe: Entwicklung

Beim TCA-Typ "language" werden nun nur noch Sprachen angezeigt, für die es auch Übersetzungen in einer Site gibt.

Zielgruppe: Redaktion

Die Möglichkeit der TCA-basierten Sortierung für IRRE-Elemente mittels "ORDERBY" Parameter in foreign_table_where Abfragen wird nun wieder korrekt ausgewertet.

Zielgruppe: Entwicklung

GoodieEin neues "schmales" internes Backend-Modul-Template/Layout wurde eingefügt, was nicht auf 100% Breite sondern einen kleineren Bereich beschränkt ist.

Zielgruppe: Entwicklung

GoodieDetailanpassungen im Camino-Theme. Es wird nun überall das "Record API" Objekt genutzt, wo möglich - inklusive der neuen "f:render" ViewHelper (Best practice). Ausserdem weitere kleine CSS-Fixes und Template-Anpassungen sowie Erstellung der Dokumentation. EXT:felogin wird unterstützt, wie auch mehrsprachige Seitenmenüs. Die TCA-Felder in "pages" für "tsconfig_includes" und "module" werden nicht mehr ausgeblendet. Indexed-Search Suchmarker werden gesetzt. Beim ersten Anlegen der Extension bei der Installation werden Dummy-Daten importiert.

Zielgruppe: Integration

GoodieWidgets können nun als "admin only" deklariert werden, indem das AdminOnlyWidgetInterface Interface implementiert wird.

Zielgruppe: Entwicklung

WissenswertDie neue (interne) Form-Datenpersistierung kann nun auch korrekt mit "variants" auf oberster Ebene umgehen.

Zielgruppe: Entwicklung

GoodieBeim erstellen von neuen Formularen wird automatisch der erste Wizard-Schritt vorausgewählt und das Eingabefeld für den Formularnamen hervorgehoben. Zudem nutzt der Wizard nun den neuen Popup-Wizard-Service.

Zielgruppe: Redaktion

Die Mehrfachauswahl von sys_redirect Einträgen nutzt nun eine korrekte CSS-Dropdown-Klasse; QR-Codes werten keinen integrity-check mehr aus.

Zielgruppe: Entwicklung

Beim Rückgängigmachen der Änderung von Seiten-Slugs werden nicht mehr nur Unterseiten sondern auch die betreffende Seite selbst wieder angepasst.

Zielgruppe: Redaktion

Das PropertyMapping mit strikter Typisierung wirft nun keine Fehlermeldung mehr, wenn propertyNames nur mit Zahlen genutzt werden (z.b. im Extensionmanager).

Zielgruppe: Entwicklung

WissenswertExtbase Identity-Maps erkennen nun ihren Sprachkontext, um sicherzustellen dass Eindeutigkeit von Objekten sprachabhängig sein muss. Andernfalls wurden mit unterschiedlichem LanguageAspect ausgelesene Datensätzen aus dem Cache mit potentiell falscher Sprache ausgeliefert.

Zielgruppe: Entwicklung

Die Nutzung von Zahl-indizierten Arrays erzeugt keinen TypeError mehr im Property Mapping.

Zielgruppe: Entwicklung

Die Auflösung von IRRE "useCombination" TCA-Datensätzen kann das referenzierte Datenobjekt nun wieder korrekt auslesen. Weiterer Cleanup der "IRRE container" Funktionalitäten.

Zielgruppe: Entwicklung

GoodieFormularfelder können nun in FormEngine direkt beim tippen validiert werden (mit Throttling).

Zielgruppe: Redaktion

Das CLI Kommando "language:domain:search" kann nun korrekt auf Übersetzungen in Sprachlabels zugreifen.

Zielgruppe: Entwicklung

WissenswertSprachdateien wie "fr_CA.locallang.xlf" können nun korrekt aufgelöst werden vom neuen Symfony Language-Handling (vorher nur "fr-CA" mit Bindestrich).

Zielgruppe: Integration

Sehr wichtigLokale Sprachdateien wie "de.locallang.xlf" konnten im Composer-Mode nicht korrekt aufgelöst werden.

Zielgruppe: Integration

Das XML-Attribut "space:preserve" wird nun in XLIFF-Dateien korrekt ausgewertet, und überall entfernt wo nicht benötigt.

Zielgruppe: Entwicklung

GoodiePerformance-Verbesserungen im Cache-Warmup und Parsing von Dateien.

Zielgruppe: Entwicklung

WissenswertContent-Blocks Extensions können nun wieder korrekt eigene XLF-Sprachdateien in Verzeichnissen platzieren und durch das neue XLIFF-Parsing auswerten. Per CI wird nun verhindert dass "locallang.xlf" und "messages.xlf" Dateien im selben Verzeichnis existieren, da sie sonst die Labels gegenseitig überschreiben.

Zielgruppe: Entwicklung

EXT:form Übersetzungen vererben nun keine Sprachkeys mehr um Probleme zu vermeiden.

Zielgruppe: Entwicklung

WissenswertEs wird nun der Sprachkey "en" statt "default" genutzt (z.b. für Spracheinstellungen von Redaktions-Accounts und technischer API-Aufrufe).

Zielgruppe: Entwicklung

Mit unserem festangestellten Mitarbeiter Garvin Hicking unterstützen wir aktiv die TYPO3-Entwicklung. Er arbeitet im Core-Merger Team des OpenSource Projekts mit, und ist daher über die neuesten Entwicklungen bestens informiert. In unseren Artikelserien zu TYPO3-Releases beleuchtet er detailiert (und garantiert ohne KI-Automatik) wichtige Änderungen.

Garvin Hicking
Senior Developer

BITV Check - Wir prüfen Ihre Website oder Ihr digitales Produkt.

Wir setzen die Projekte unsere Kunden nicht nur BITV-konform um, wir prüfen auch Websites, Apps und digitale Produkte hinsichtlich der gesetzlichen Anforderungen. Buchen Sie unser 30-Minten-Erstgespräch - unverbindlich, klar und kompetent. Denn digitale Barriefreiheit ist Pflicht.