TYPO3 Release 13.4.29
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
Das neue Maintenance-Release beinhaltet kleinere Bugfixes, und vor allem ein aus v14 zurückportiertes Feature mit dem neuen “f:render.text” ViewHelper, um eine Migration und Nutzung der EXT:visual_editor Extension zu vereinfachen, und Projekte bereits jetzt mit “semantischem Rendering” auszustatten. Zudem wurde nun im Layout-Modul ein automatisches Randscrolling (browserunabhängig) eingefügt bei Drag+Drop-Operationen.
Insgesamt gab es 38 Änderungen.
TypoScript
API (Frontend / Extbase)
- WissenswertDas Rendering von Submenüs mit "Link"-Datensatztypen wird nun wieder korrekt gecacht
- WissenswertDer ContentObjectRenderer kann nun beim Leeren von referenzierten Objekten (via TypoScript) und dem nachfolgenden neuen Setzen von Werten diese wieder korrekt verarbeiten
- Anpassung in ImageMagickExec für korrekte Ausführung der "+matte" Option von ImageMagick
Fluid
EXT:indexed_search
Backend: UI
- Sehr wichtigDas Deaktivieren von Inline-Elementen (IRRE) funktioniert nun wieder korrekt, auch wenn innerhalb des IRRE-Elements eine Checkbox für den Sichtbarkeitszustand enthalten ist. Langjähriger und vielbeachteter Bug mit einem Fix, der hoffentlich Freude bereitet.
- WissenswertScrolling bei Drag and Drop im Layoutmodul kann nun am Rand automatisch scrollen (browserunabhängig)
- Die Layout-Ansicht von Inhaltselementen nutzt nun eine korrekte Spaltenbreite (relevant für EXT:container Nutzung für z.b. 50%/50% Container)
Backend: API
- WissenswertVermeidung von Problemen im Database-Compare (Schema Migration) in Zusammenhang mit Dependency Injection und eigenen Query Restrictions
- WissenswertDer "RotatingFileWriter" löscht nun keine Logfiles mehr wenn die Anzahl auf `0` konfiguriert wurde.
- WissenswertModul-Aliase werden beim cache-Warmup nicht mehr "verschluckt" und fehlen dann im Routing (relevant für "Legacy"-Module in der TYPO3 v14 Modulumbenennung)
- Der Aufruf von `PreviewUriBuilder::withRootline` gibt nun das korrekte modifizierte Objekt aus
- Der PageLayoutController wertet `returnUrl` nun mit XSS-Scrubbing korrekt aus
- Das TypoScript-Attribut von Site Sets kann nun auch mit einem technisch möglichen "NULL"-Wert umgehen und keine Fehrlemdlung mehr werfen (wie auch für Page TSConfig)
- Das LoggerInterface kann nun auch über `inject` Methoden für Dependency Injection genutzt werden. Hierdurch kann man besser auf das `LoggerAwareInterface` Trait verzichten.
- Der PackageManager verhindert nun eine Race-Condition im Erstellen der PackageStates-Datei
- In der Backend-Datensatzliste kann der RecordListcontroller beim Ausführen von Suchfunktionen nun in der SQL-Abfrage Tabellenaliase korrekt nutzen und Ambiguitäten vermeiden, wenn dies erweitert wird.
- TCA itemGroup Elemente die reine Zahlenwerte als Identifikator benutzen werden korrekt ausgewertet
- Die ZipService:verify Methode normalisiert nun Back- und Forward-Slashes für korrekte Verwendung bzw. Fehlermeldungen auf Windows-Systemen
- Das Routing von Instanzen wo der Site-Root nochmal im Slug einer Unterseite vorkam (z.b. "/ppw/ppw") wertet nun den SiteRoot korrekt aus
Backend: EXT:workspaces
Dependencies
Dokumentation
- Das Extbase DomainObjectInterface ist nicht mehr "@internal" deklariert um klar zu machen dass es Teil der offiziellen API ist
- Bessere Code-Dokumentation um klarzustellen dass eigene Klassen niemals direkt das `AbstractDomainObject` implementieren sollen, sondern immer nur `AbstractEntity` oder `AbstractValueObject`.
- Die "PageInformation"-Klasse ist nun nicht mehr "@internal"
- Die Empfehlung für RAM-Limit wurde von 256MB auf 512MB angehoben
