Zikula 4 - Fokus auf die eigenen Stärken

in  Zikula Apps , ,

Zikula 4 - Fokus auf die eigenen Stärken

Im Juli haben wir noch etwas zaghaft damit begonnen, historischen Ballast aus dem Zikula Core zu entfernen. Unter anderem wurden spezielle Themes und das Hook-System ausgesondert. Während der letzten Tage hat die Konsolidierung nun Fahrt aufgenommen. Dieser Beitrag fasst kurz zusammen, was bisher passiert ist.

  • Eine Vielzahl von Repositories für Content-getriebene Erweiterungen wurde archiviert. Schon vor 10 Jahren wurde die Frage gestellt, ob Zikula ein Content Management System oder ein Framework ist. Da die Community gemischt war und Vertreter unterschiedlicher Zielgruppen beinhaltet hatte, konnte das nie eindeutig geklärt werden, weswegen alles versucht, aber nichts fokussiert vorangetrieben worden war. Das hatte dazu geführt, dass bei sinkender Manpower weiter versucht wurde, ein größeres Ökosystem dauerhaft zu warten. Das ist nun Geschichte: wie bereits erwähnt wird mit Zikula 4 ohnehin Symfony die Führung übernehmen. Ob dann Zikula-Erweiterungen mit Symfony selbst oder auf einem darauf basierenden Content Management System (wie etwa Bolt oder Sulu) verwendet werden, ist Geschmackssache bzw. hängt von der Ausrichtung des jeweiligen Projektes ab. Es ist vorgesehen, dass ModuleStudio-basierte Bundles entsprechend in verschiedenen Szenarien einsetzbar sind. Es macht aber keinen Sinn, dass wir versuchen, Erweiterungen für Inhaltspflege, Blogsysteme, Medienverwaltung, Bewertungen usw. usf. zu pflegen - denn davon gibt es im Symfony-Ökosystem genug zur Auswahl. Betroffen sind hier beispielsweise Content, Eternizer, EZComments, Formicula, Media, MultiHook, Multisites, News, PageLock, Pages, Ratings, Reviews, Scribite und noch viele weitere.
  • PageLock ist entfernt worden - sowohl aus dem Core als auch aus dem Generator.
  • Das veraltete BootstrapTheme ist ebenfalls rausgeflogen zu Gunsten seines Nachfolgers DefaultTheme.
  • Der Core hat nun keinen eigenen Installer mehr, in diesem Zuge wurde auch der ohnehin als veraltet gekennzeichnete YamlDumper überflüssig.
  • Das Search-Modul ist weg, denn es war eines der Dinge, die wir bei Zikula nicht besser konnten als andere, die aber dafür gesorgt haben, dass Zikula-Module immer noch anders arbeiteten als normale Symfony Bundles. Wenn man eine Suchfunktion braucht, kann man zum Beispiel ElasticSearch verwenden. Auch die RouteUrl-Klasse sowie das dazugehörige UrlInterface konnten hiermit entfallen.
  • Das Pending Content System wurde entfernt.
  • Dynamische Menüs können nicht mehr datenbank-basiert definiert werden. Die angepassten Templates für das verwendete KnpMenuBundle bleiben erhalten und werden voraussichtlich in die Theme Engine verlagert.
  • Das in die Jahre gekommene PHPIDS wurde aus dem SecurityCenter-Modul entfernt. Die Empfehlung lautet hier, eine WAF (Web Application Firewall) auf Serverebene zu nutzen, anstatt so etwas innerhalb der Applikation zu adressieren.
  • Im Routes-Modul können keine eigene Routen mehr erstellt werden. Das eigene/angepasste Routing-System wird ebenfalls noch ausgebaut werden, um hier dem Symfony-Standard voll zu entsprechen.
  • Das Blocksystem wurde entfernt. Auch dies ist so eine Sonderlocke, die sehr historisch motiviert ist (das gab es ja schon zu xxxNuke-Zeiten). Die Anforderung, dass jedes Modul bestimmte Funktionen in Form von Blöcken bereitstellen muss, wirkt auch aus der Zeit gefallen: in Symfony lässt sich jede Response an beliebiger Stelle einbinden. Übergangsweise haben wir das Hauptmenü und den Sprachwechsel fix im Theme eingebunden.
  • Auch Modul-Abhängigkeiten sind nicht mehr vorhanden. Das Extension-System wird aber noch weiter rückgebaut, da Erweiterungen nur noch mit Composer und Flex verwaltet werden sollen. Das ist einer der nächsten Punkte auf der Liste.
  • Das Mailer-Modul wurde entfernt, schließlich hat es einen größeren Aufwand getrieben, nur um eine Umgebungsvariable (MAILER_DSN) zu setzen. Die Funktionalität zum Testen des Mailversandes bleibt erst einmal bestehen, sie wurde in das Settings-Modul verschoben.
  • Die eigenen Maker zum Erstellen von Zikula-Erweiterungen sind rausgefallen.

Wir werden wieder hier berichten, nachdem die nächsten Schritte gemacht worden sind.

Weitere Beiträge in Kategorie Zikula Apps

Kommende Neuerungen in Symfony 6.4
- Die Veröffentlichung der nächsten Symfony-Version 6.4 steht bevor. Wie immer gibt es regelmäßige Einblicke in die wichtigsten, zu erwartenden Features und Verbesserungen. Dieser Beitrag zeigt im …
Symfony vereinfacht zeitgesteuerte Aktionen mit neuer Scheduler-Komponente
- Mit Symfony 6.3 sind wieder allerhand neue Features hinzugekommen. In diesem Beitrag möchte ich kurz die neue Komponente Scheduler vorstellen, mit welcher der Symfony Messenger um zeitgesteuerte …
SSO mit Keycloak und Symfony
- Mit der Java-basierten Software Keycloak wird die Verwaltung und Authentifizierung von Nutzern zentral gelöst. Hierbei bleiben kaum Wünsche offen: egal ob nun ein Registrierungsprozess, die …
Symfony UX Translator bietet Mehrsprachigkeit in JavaScript
- Bereits seit einigen Jahren gibt es das BazingaJsTranslationBundle, welches es erlaubt, den Symfony Translator auch Client-seitig zu verwenden. Auch in Zikula kommt dieses Bundle zum Einsatz, …
Kommende Neuerungen in Symfony 6.3
- Die Veröffentlichung der nächsten Symfony-Version 6.3 ist für Ende Mai 2023 geplant. Wie immer gibt es regelmäßige Einblicke in die wichtigsten, zu erwartenden Features und Verbesserungen. Dieser …