Zikula 4 und ModuleStudio - Weitere Integration mit dem EasyAdminBundle

in  Zikula Apps , , ,

Zikula 4 und ModuleStudio - Weitere Integration mit dem EasyAdminBundle
Im letzten Beitrag wurde unter anderem dargestellt, dass Zikula 4 nun das EasyAdminBundle (EAB) integriert um das alte Admin-Interface abzulösen. Zwischenzeitlich sind die Arbeiten daran etwas fortgeschritten. Änderungen im Zikula Core Zikula bietet in seinem ThemeBundle per Standard ein UserDashboard und ein AdminDashboard, die beide das Site Branding verwenden. Diese können leicht in einem Projekt angepasst und erweitert werden. Darüber hinaus ist es natürlich möglich, weitere Dashboards hinzuzufügen, um spezifische Sichten für weitere Gruppen bereitzustellen.

Zikula 4 - Weiteres Ausmisten im Gange

in  Zikula Apps , ,

Zikula 4 - Weiteres Ausmisten im Gange
Getreu dem Motto Wer loslässt, hat die Hände frei wird der Zikula Core gegenwärtig ausgemistet: das Ziel ist es, wieder ein schlankes System zu schaffen, welches nicht jede Funktionalität selbst anbieten möchte, sondern sich hierfür noch mehr dem Symfony Ökosystem öffnet. Seit dem letzten Beitrag wurde weiter Ballast abgeworfen - die Änderungen aus den letzten zwei Wochen werden im Folgenden dargestellt. Das OAuthBundle ist entfernt worden; das ist ein Vorgeschmack darauf, dass Zikula keine eigene Methodik zur Authentifizierung anbieten, sondern sich mehr an das Security-System von Symfony halten sollte.

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.

Symfony UX im Kontext von ModuleStudio

in  Basics , , , ,

Symfony UX im Kontext von ModuleStudio
Stimulus und Symfony UX Ein JavaScript-Ökosystem für Symfony wurde bereits Ende 2020 gestartet. Vereinfacht ausgedrückt wurde Symfony Flex erweitert, um auch JavaScript-Anteile in einem Bundle leicht konfigurieren und einrichten zu können. Dazu wird eine Integration mit Stimulus verwendet. Diese Struktur führt zu einer zunehmenden Standardisierung und Aufteilung in wiederverwendbare UX-Komponenten. Seitdem ist eine Menge passiert: nach Webpack Encore 1.0 und Stimulus Bridge 2.0 kam Symfony UX Turbo, das auf der Basis von Turbo das Schreiben von JavaScript in vielen Fällen überflüssig macht.

Zikula 4 - Die Schlankheitskur beginnt

in  Zikula Apps , ,

Zikula 4 - Die Schlankheitskur beginnt
Bereits vor einiger Zeit sind die Gedankengänge gereift, in welche Richtung sich der Zikula Core 4 bewegen wird. Die wohl wichtigste Änderung besteht darin, dass Zikula nicht mehr Symfony und verschiedene Drittanbieter-Ergänzungen beinhaltet, sondern Erweiterungen für Symfony bereitstellt. Zikula-Bundles können dann wie jede andere Erweiterung mit Composer und Flex eingebunden werden. Das löst einige Knoten, da so das Ökosystem von Symfony einfacher verwendet werden kann, anstatt Lösungen für alle möglichen Anliegen in Zikula selbst bauen zu müssen.

Zikula 3 - Cross-Release und weitere Ausrichtung

in  Zikula Apps , , , ,

Zikula 3 - Cross-Release und weitere Ausrichtung
Heute sind gleichzeitig zwei neue Versionen vom Zikula Core veröffentlicht worden. Zikula 3.0.4 bringt Fehlerkorrekturen Mit der Version 3.0.4 wird ein weiteres Bugfix-Update für die Hauptversion 3 bereitgestellt. Die Änderungen im Detail werden in der Release-Ankündigung aufgelistet. Zikula 3.1.0 hat etwas mehr an Bord Außerdem ist auch Zikula Core 3.1.0 erschienen; dieses Update beinhaltet zusätzlich einige Neuerungen, bringt aber auch Veränderungen mit. Auch hierfür gibt es eine detaillierte Liste mit den Korrekturen, hinzugefügten Features und sonstigen Neuerungen.

Response-Eigenschaften im Zikula Theme-Layer anpassen

in  Zikula Apps , ,

Response-Eigenschaften im Zikula Theme-Layer anpassen
In Zikula gibt es eine Besonderheit zu beachten, welche Einfluss darauf nimmt, wie die aus einem Request resultierende Response zum anfragenden Client gelangt. Per Standard wird die Response in Symfony im Rahmen einer Controller-Aktion erstellt und zurückgeliefert. Gegebenfalls wird die Response noch von einem oder mehreren Event Subscribern verändert. Bei Zikula wird noch eine Theme-Schicht dazwischen geschaltet, welche den Inhalt der Response in eine neue Response überführt, um den Layout-Rahmen sowie damit einhergehende, zusätzliche Blöcke usw.

SensioLabs Security Checker wurde eingestellt

in  Builds & Tests , , ,

SensioLabs Security Checker wurde eingestellt
Zu den grundlegenden Aufgaben automatisierter Builds zählen unterschiedliche Prüfungen: so bietet es sich an, die Einhaltung der Coding-Styles zu überwachen, Qualitätsmetriken zu erheben und die Testabdeckung zu messen. Auch die regelmäßige Aktualisierung verwendeter Drittkomponenten kann perfekt automatisiert werden, wie wir es in diesem Beitrag für GitHub Actions gezeigt haben. Ein nützliches Werkzeug, das anhand einer composer.lock Datei etwaige Sicherheitslücken in verwendeten Vendors aufgezeigt hatte, war der SensioLabs Security Checker. Dieser hat die entsprechenden Versionen mit einer Datenbank auf security.

Tabellennamen mit Doctrine dynamisch anpassen

in  Zikula Apps , ,

Tabellennamen mit Doctrine dynamisch anpassen
Mit Hilfe der Metadaten von Doctrine lassen sich jegliche Daten zu einer Entität zur Laufzeit verändern. Allerdings kann das in manchen Anwendungsfällen fortwährend notwendig sein, zum Beispiel in Multi-Tenancy-Umgebungen. Wenn zudem Operationen mit dem Schema Manager in der Datenbank benötigt werden, kann es schnell unübersichtlich werden, da man sich nicht sicher sein kann, ob eine bestimmte Veränderung bereits durchgeführt worden ist oder noch nicht. Der folgende Code-Ausschnitt zeigt ein Beispiel für eine Klasse, die eine Modifikation zentral für alle Entitäten, die für einen bestimmten EntityManager registriert sind, durchführt - hier wird etwa der Name der durch die Entität angesprochenen Datenbanktabelle verändert:

Zikula Core 3.0.3 mit Sicherheits-Update von Symfony 5

in  Zikula Apps , ,

Zikula Core 3.0.3 mit Sicherheits-Update von Symfony 5
Vor kurzem hatten wir über das Release von Zikula 3.0.1 berichtet, welches wichtige Korrekturen für Zikula 3 bereitgestellt hat. Vor einer Woche wurde die nächste Version 3.0.2 veröffentlicht. Allerdings ist kurz danach Symfony 5.1.4 und dann noch Symfony 5.1.5 mit einem Security-Patch erschienen. Daher steht nun auch als neues Release die Version Zikula 3.0.3 zur Verfügung, welche diese Updates ebenfalls zur Verfügung stellt.