Kommende Neuerungen in Symfony 6.2

in  Zikula Apps , ,

Kommende Neuerungen in Symfony 6.2
Gegenwärtig laufen die Arbeiten an der nächsten Symfony-Version 6.2. Wie immer gibt es regelmäßige Einblicke in die wichtigsten, zu erwartenden Features und Verbesserungen. Dieser Beitrag zeigt im Folgenden die bisher veröffentlichten Blog-Beiträge thematisch nach Komponente sortiert. Allgemein Attribute für Cache, Security, Template und Doctrine Bessere Debugging-Kommandos Verbesserter Enum-Support DX Verbesserungen Clock Neue Clock-Komponente Console Console-Verbesserungen Finder Finder-Verbesserungen Intl Besserer Support für Emojis Mailer Neue Integrationen Erweiterbarkeit für den Mailer Notifier Neue Integrationen Profiler Profiler Redesign Routing PSR-4 Route Loader Security Access Token Authenticator Security-Verbesserungen (Teil 1) Security-Verbesserungen (Teil 2) String Besserer Support für Emojis Translation Bessere Extraktion von PHP-Übersetzungen Uid Neue UID-Features Validator Bedingte Constraints Verbesserter File-Validator VarExporter Unterstützung für Lazy-Loading von Objekten Eine ganze Reihe weiterer Neuerungen können der Release-Ankündigung der ersten Beta entnommen werden.

Abhängigkeiten automatisch aktualisieren mit Renovate

in  Builds & Tests , , ,

Abhängigkeiten automatisch aktualisieren mit Renovate
Um Dependencies aktuell zu halten, wird bei GitHub oft und gerne der Dependabot eingesetzt. Mit Renovate existiert allerdings eine äußerst flexible Alternative, die im Folgenden kurz vorgestellt wird. Zu den wichtigsten Stärken von Renovate gehören folgende Eigenschaften: Updates können anhand vielfältiger Kriterien in gemeinsame Merge Requests gruppiert werden. Bei einem Symfony-Update muss man somit nicht mehr jede Symfony-Komponente einzeln aktualisieren und mergen. Bestimmte Updates können bei Bedarf automatisch eingespielt werden. Die Häufigkeit von Merge Requests kann ebenso eingestellt werden wie diverse Standardvorgaben, wie etwa die zuzuordnenden Bearbeiter, Reviewer oder Labels.

Zikula 4 - Ansätze für ein leichtgewichtigeres User Management

in  Zikula Apps , ,

Zikula 4 - Ansätze für ein leichtgewichtigeres User Management
Im Rahmen der Schlankheitskur vom Zikula Core sind einige Altlasten bereits entfernt worden. Das Admin-Interface baut nun auf dem EasyAdminBundle auf. Ein größerer Knoten, den es noch zu entwirren gilt, betrifft die miteinander zusammenhängenden Themen Benutzer, Gruppen, Rechte, Rollen, Security. Dieser Beitrag beleuchtet unsere damit einhergehenden Gedankengänge und zeigt auf, welchen Plan wir für die nächsten Schritte verfolgen wollen. Wo kommen wir her? Seither wurden die relevanten Funktionen in Zikula durch folgende Bausteine bereitgestellt:

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.

Symfony-Projekte im Monorepo mit Nx bauen

in  Builds & Tests , , ,

Symfony-Projekte im Monorepo mit Nx bauen
Mit dem Build-System Nx lassen sich beliebige Projekte in einem Monorepo auf einheitliche Weise testen und bauen. Es bedient sich verschiedener npm-Plugins, um dies für unterschiedliche Technologien umzusetzen. Ein Projekt kann dabei entweder als Applikation oder als Bibliothek abgebildet werden. Dies kann für ein Java-basiertes Projekt etwa durch Maven oder Gradle erfolgen. Um ein einzelnes Projekt zu testen oder zu bauen, reicht ein Aufruf in der Form nx test <app> bzw.

KeePassXC im Browser nutzen trotz Sandbox dank Auto-Type

in  Verschiedenes , , ,

KeePassXC im Browser nutzen trotz Sandbox dank Auto-Type
Nach dem Ende März erfolgten Kubuntu-Upgrade auf Jammy Jellyfish blieb das Problem, dass sich KeePassXC nicht mehr automatisch in dem nun auf Snap umgestellten Firefox-Browser integriert betreiben lässt. Normalerweise arbeitet die Integration zwischen Browser und Passwort-Manager mit Hilfe eines Browser-Plugins: hierüber fragt der Browser die benötigten Daten an. Da sich das KeePass jedoch außerhalb der Sandbox befindet, ist dies aus Sicherheitsgründen nicht mehr zulässig. Abhilfe schaft hier eine Funktion namens Auto-Type: hiermit fungiert KeePassXC im Prinzip als Tastatur und schreibt so Benutzername und Kennwort aktiv von außen in das entsprechende, aktuell geöffnete Login-Formular.