For coders TYPO3 Tech Corner

in2publish_core 9.5.0 Performance, sorting publishing, cleanups und fixes

in2publish_core 9.5.0 Performance, sorting publishing, cleanups und fixes

Wie der Titel schon vermuten lässt, Gibt es ein neues Minor Release mit spannenden neuen Features. Wie wir mit dem 9.4.0 Release angekündigt haben, schreiten wir mit großen Schritten auf die Major Releases 10.x und 11.x zu. Dabei konzentrieren wir uns weiterhin auf UI-Optimierungen und Sicherheit.

Blick auf die Bugfixes

  • Die Zuordnung von Datensätzen zu übergeordneten Datensätzen, die als Übersetzung geholt werden, wurde korrigiert
  • Verwendung von = statt LIKE für Constraints, die nur Ziffern enthalten (Dank an @friggingee hier)
  • Verwendung bereits existierender Datensätze bei der Suche nach Datensätzen über einen einzelnen Bezeichner
  • Einige Logger, die nichts Nützliches aufzeichneten, wurden entfernt
  • Füge Felder zu sys_redirects nur hinzu, wenn EXT:redirects aktiv ist
  • Verarbeite keine Dateien, die nicht existieren (Ursache muss noch behoben werden)

Die neuen Features

Um ehrlich zu sein, ist die erste Funktion im zweiten Bugfix versteckt, die die Abfragen in Abhängigkeit von den in den Constraints verwendeten Werten ändert. Die einfache Verwendung von = anstelle von LIKE beschleunigt die Extension, da die Datenbank nicht erst eine ganze Tabellenspalte in einen String umwandeln und den Index vernachlässigen muss. Wir haben zwischen -3% und -44% Ausführungszeit für das Publish Overview Modul gemessen. Das ist fantastisch!

Als nächstes: "Respect rootLevel, allowedTables and skip empty tables or missing PIDs". Teilweise ein Bugfix, teilweise ein Feature. Entwickler wissen, dass TYPO3 verschiedene Mechanismen hat, die es erlauben oder verbieten, dass bestimmte Arten von Datensätzen auf bestimmten Seiten oder an bestimmten Stellen im Seitenbaum erstellt und gespeichert werden. Der Content Publisher hat sich bei der Suche nach Datensätzen, die auf Seiten gespeichert sind, nicht an diese Regeln gehalten, was zu einer großen Anzahl von Abfragen führte. Diese Regeln sind als rootLevel-Beschränkung und allowedTables je nach Seitentyp bekannt. Darüber hinaus nimmt der Publisher einblick in die Inhalte der Tabellen, die abgefragt werden. Mit den Informationen, die er durch den Blick in die Tabelle erhält, kann er nun entscheiden, weitere Abfragen an diese Tabelle zu überspringen, da sie entweder leer ist oder keinen speziellen Wert enthält (die gesuchte PID). Diese Funktion reduziert noch mehr überflüssige Abfragen und steigert damit die Performance.

Die letzte große Änderung heißt "publishSorting". Diese Funktion überwacht den Veröffentlichungsprozess und erkennt Änderungen in der Reihenfolge der veröffentlichten Seiten und Datensätze. Wenn eine Änderung festgestellt wurde, veröffentlicht die Funktion "publishSorting" die Sortierung aller Datensätze, die von dieser Änderung betroffen sind (aber keine anderen Eigenschaften der besagten Datensätze). Auf diese Weise kann die Reihenfolge der Datensätze gepflegt werden, ohne dass alle von der Sortierungsänderung betroffenen Datensätze manuell veröffentlicht werden müssen.

Im Rahmen der Verbesserungen von in2publish ist es  gelungen auch noch in2publish_http 6.0.0 fertigzustellen. Das bedeutet 13 Dateien und 700 Zeilen weniger Code. Der Adapter ist nun sicherer und schneller als je zuvor. Und er ist so sauber!

Ausblick

Der Content Publisher unterstützt alle aktiven LTS-Versionen. Das bedeutet: Der Content Publisher Support für TYPO3 v9 wird mit dem TYPO3 v9 LTS EOL (End of Life) am 30. September enden.

Da die Kompatibilität mit TYPO3 v11 (an der wir bereits arbeiten) Änderungen am HTML unserer Backend-Module und PageTree-Hooks erfordert, nutzen wir die Gelegenheit, um die UI weiter zu modernisieren. Um TYPO3 v10 noch bis zu seinem EOL am 30. April unterstützen zu können, veröffentlichen wir ein neues Major Release (in2publish_core 10.0.0 und in2publish 10.0.0) das die TYPO3 v10 unterstützen wird, und eine Version, die TYPO3 v11 unterstützt (in2publish_core 11.0.0 und in2publish 11.0.0).

Wir erwarten keine großartigen Änderungen an der Benutzeroberfläche nach TYPO3 v11, so dass in2publish_core und in2publish 11.0.0 wahrscheinlich wieder beide Versionen unterstützen werden, wenn TYPO3 v12 erscheint.

Wenn Sie mehr über die neue Version erfahren möchten, nehmen Sie Kontakt mit uns auf.

Zurück

Kennst du das: Immer nur schnell schnell?

Wie wäre es einmal mit Zeit und Respekt für Codequalität? Arbeiten im Team? Automatisierte Tests?

Komm zu uns