TYPO3 Release 13.4.35
In der Reihe TYPO3 Release-Notizen beleuchten wir regelmäßig die wichtigsten Bug-Fixes/Security-Issues oder wichtigen Änderungen in einem neuen Patchlevel-Release. Diese Releases sind gemäß Roadmap bereits terminiert und erscheinen grob einmal im Monat.
Bugs haben je nach Projekt unterschiedliche Auswirkungen. Was in einem Projekt kritisch ist, kann in einem anderen kaum eine Rolle spielen. Unsere Gewichtung ist daher subjektiv und soll die Relevanz anderer Fixes nicht herabspielen.
Aktuelles Release
Dieses Security-Release behebt eine Sicherheitslücken für Backend-Benutzer, die AJAX Endpunkte fürt den Lokalisierungswizard für Systemangriffe nutzen können.
Weitere Goodies dieses größeren Releases:
- Viele Workspace/History-Bugfixes
- Viele Extbase-Fixes (Serialisierung, LazyProxies, Overlays)
- Viele Doctrine DBAL-Fixes
- stdWrap "override" wertet nun "0" korrekt aus
- EXT:form Bugfixes für EXT:solr Kompatibilität
- Goodie: Monorepo hat jetzt auch eine AGENTS.md!
Insgesamt gab es 49 Änderungen.
Sicherheit
EXT:form
TypoScript
- WissenswertDer Service zum Auflösen der aktuellen TypoScript-Konfiguration einer Seite wurde im ECObject ViewHelper eigenständig aufgerufen, wodurch es die TypoScript-Isolation/Manipulation konkret im Zusammenhang mit EXT:solr brechen konnte
- Bei der Nutzung vom `stdWrap.replacement` werden ungültige reguläre Ausdrücke nun ohne Verarbeitungsfehler am Inhalt durchgeführt
API (Frontend / Extbase)
- WissenswertNicht-verfügbare Datei-Referenzen im Frontend-FileCollector (Dateisammlungen) werfen nun keine PHP-Fehlermeldung mehr
- WissenswertExtbase-Relationen können nun auch Enum-backed/JSON Objekte nun verarbeiten, bzw. schlagen auch generell nicht mehr fehl bei zugewiesenen DomainObjectInterface Objekten
- Das Extbase QueryResult kann nun wieder (z.B. in einem Cache) serialisiert werden
Fluid
- WissenswertDer neue `f:render.text` ViewHelper kann im Backend-Kontext nun richtig funktionieren (relevant für EXT:content_blocks)
- Nutzung von f:render.text bei Elementen ohne TCA erzeugt keine Fehler mehr
Backend: API / Core
- WissenswertDer Datenbank-Vergleich/Migrator kann nun virtuelle "Views" von Tabellen ignorieren
- WissenswertEine neue Datenbank-Indexspalte für verbesserte Lookups von Sprachvarianten von Datensätzen wurde eingefügt. Dadurch werden im DB Compare Modul diverse (optionale) Datenbankänderungen ausgewiesen.
- Der "ErrorPageController" kann nun auch im Failsafe-Container-Context (Install-Tool) eingesetzt werden
- Datenbanknamen mit Punkt (".") im Namen erzeugen keine falsche Fehlermeldung mehr und können genutzt werden
- Performance-Optimierung für Datenbankabfragen bei der Index-Erzeugung für Relationen beim Speichern eines Datensatzes
- Es werden nun alle PSR-3 LogLevel-Typen im TimeTracker verarbeitet
- Der Server-Check im Install-Tool kann nun auch etwaige durchgereichte HTTP Auth Zugangsdaten durchreichen
- Die Eigenschaft "pages.cache_tags" wurde in der TCA-Definition so angepasst, dass nur die wirklich erlaubten Zeichen zugelassen werden, die später auch ausgewertet werden können.
- Für SQLite werden die JSON/UUID Type Mappings nun genauer deklariert
- (Ungültige) Datenbank-Indexe für nicht vorhandene Spalten werden nun übersprungen (also auch für SQLite, da MySQL/PGSQL dies intern abgefangen haben)
- Nutzung von SQL Abfrage-Chunking/Splitting für Referenz-Index Erzeugung, um Speicherprobleme zu vermeiden bei besonders großen Datensätzen
- Das `ProcessedFile` Objekt resettet nun ein "deleted" Flag wenn eine gelöschte Dateivariante (Cropping/Preview etc.) weiterverarbeitet wird
- Das MFA-Loginpopup setzt nun korrekte Redirects für den Fall das nicht der Login sondern eine andere Aktion abgefangen wird
PHP-Typfehler
Backend: EXT:workspaces / History
- Die History-Änderungen beim Verschieben von Datensätzen wird nun korrekt (nicht mehr als "deleted") getrackt
- Der Workspace-Indikator wird nun auch bei übersetzten Seiten richtig angezeigt
Backend EXT:linkvalidator
Backend EXT:impexp
EXT:redirects
Strukturelles
- Anpassung der Unit-Tests, so dass temporäre Dateien/Verzeichnisse immer einen eigenständig Präfix erhalten pro Test
- runTests.sh läuft nun auch mit GIT worktress (für agent-basierte Tasks und TYPO3-Core-Entwicklung relevant)
Dependencies
- Doctrine DBAL wird auf 4.4.4 als Minimum angehoben
- Ermöglichung der Guzzle v8 Dependency
- Nightlies werden nun auch mit PHP 8.6 bereits getestet
