Drupal 8.4 wurde am 04.10.2017 offiziell released. Ich habe mir die RC1 angesehen und die (aus meiner Sicht) interessantesten Punkte einmal gesammelt.
Mein Fazit vorne weg:
Mit dem Release 8.4 ist der Drupal-Community mal wieder ein großer Sprung gelungen. Vor allem die Fortschritte bei Workflows und Media werden ein echter „game changer“ sein und das Fundament fĂŒr viele interessante Neuentwicklungen bilden. Es ist wundervoll zu sehen, dass der neue Release-Zyklus von Drupal 8 zu der erwarteten fortlaufenden Innovation fĂŒhrt und wir uns alle sechs Monate auf einen verbesserten, leistungsfĂ€higeren Core freuen können, der wichtige SĂ€ulen des Content Management immer weiter standardisiert.

Im Detail 


Modul-Updates

Es sind wieder einige experimentelle Module auf eine stabile Release-Version gehoben worden:

Datetime Range

Ein hĂ€ufig genutztes Feature, um nicht nur Anfangs-, sondern auch Enddaten zu erfassen. Sehr praktisch fĂŒr Events, Terminkalender u.Ä.

Layout Discovery

Über „Layout Discovery“ können Module und Themes verschiedene Layouts mit Regionen im System registrieren, so dass diese ĂŒber das Modul / Theme hinaus von anderen Komponenten verwendet werden können.

Inline Form Errors

Ein großer Fortschritt fĂŒr die Redakteure: Bei der Validierung bzw. einem im Formular auftretenden Fehler können die zugehörigen Fehlermeldungen mit „Inline Form Errors“ direkt beim betreffenden Feld angezeigt werden, statt gesammelt in einer Message ĂŒber dem Inhalt. So kann der Endnutzer sofort erkennen, welches Feld falsch ausgefĂŒllt ist.

Workflows

Das Workflows-Modul bietet einem Site Builder erstmal keine Features, ist aber die Grundlage, um ĂŒber eine standardisierte API Workflows fĂŒr Inhalte zu definieren. Das Modul "Content Moderation" baut auf diese API auf und stellt dem Sitebuilder die entsprechende UI zur VerfĂŒgung, um Workflows im Backend zu definieren. Leider gilt „Content Moderation“ aktuell noch als experimentell, wird aber unter Hochdruck weiterentwickelt. Vielleicht haben wir GlĂŒck, so dass in der Zeit bis zum Release alle derzeit noch vorhandenen Probleme behoben werden.

Dann wĂŒrden Workflows und „Content Moderation“ als "Geschwister" fĂŒr die Verwaltung von Inhalten in großen Redaktionen einen tollen Beitrag leisten. Ansonsten ist davon auszugehen, dass „Content Moderation“ wohl beim Release von Drupal 8.5 stabil sein wird, wenn es bei 8.4 nicht klappt.

Media

Wer die Media-Initiative kennt, wird schon mitbekommen haben, dass die „Media Entity“ nun in den Core kommt. Mit Version 8.4 ist das Core-Modul nun stabil und kann von allen Contrib-Entwicklern verwendet werden, um das umfangreiche Media-Ecosystem mit „Entity Browser“, „Media Plugins“ usw. an die Core-Version anzupassen. Bisher musste man dafĂŒr extra das Modul „media_entity“ installieren. Da noch nicht alle Contrib-Module auf die Core-Variante angepasst wurden, kann man dies auch weiterhin tun, um schnell zu Ergebnissen zu gelangen. Die Core-Variante ist aus diesem Grund aktuell etwas versteckt. Man findet sie nicht auf der Modul-Übersichtsseite (/admin/modules), um möglicher Verwirrung bei den Usern vorzubeugen. Als Entwickler kann man das Modul jedoch ĂŒber drush oder „drupal console“ aktivieren, um eigene Implementationen schon mal darauf anzupassen. Wichtig: "media" (Core-Variante) und "media_entity" (Contrib-Variante) können nicht gleichzeitig aktiviert sein! Wer aktuell unsicher ist nutzt einfach die Contrib-Variante, da es einen Upgrade-Path auf die Core-Variante geben wird. Sobald alle Contrib-Module, die fĂŒr Media benutzt werden, aktualisiert sind, kann man einfach die Contrib-Variante abschalten und die Core-Variante anschalten um den Wechsel zu vollziehen.

Settings Tray BETA

Ist zwar noch nicht stabil, aber mittlerweile in der Betaversion angekommen. Wichtig: Wer das Modul bereits verwendet (natĂŒrlich nur zu Testzwecken ;-) ) achtet vor dem Upgrade auf 8.4 darauf, dass es deaktiviert ist. Der maschinenlesbare Name des Moduls wurde von "outside_in" (Arbeitstitel) zu "settings_tray" umbenannt, wodurch das Upgrade schieflaufen kann. Nach dem Upgrade kann man es einfach wieder aktivieren, da es keine Daten oder Config speichert.

Fixes

Automatisches Löschen von Dateien ohne bekannte Verwendung deaktiviert
Bei einigen Usern trat der Fall auf, dass der Core nicht sauber erkannt hat, ob und wo eine Datei verwendet wird. Dies fĂŒhrte dazu, dass einige Dateien, die mit 0 Verwendungen markiert waren, aus dem Dateisystem gelöscht wurden, da Drupal davon ausging, dass diese temporĂ€re Dateien sind und nicht mehr gebraucht werden. An sich ein super Feature, welches verhindern kann, dass der Server zu schnell volllĂ€uft. Durch diesen Bug wurden jedoch zu viele Dateien gelöscht. Um Datenverlust vorzubeugen, ist das Feature nun standardmĂ€ĂŸig deaktiviert und muss erst hĂ€ndisch aktiviert werden.

Viele Hotfixes fĂŒrs Revisions-System

Auch hier konnte es zu Datenverlust kommen, wenn Revisionen in Verbindung mit „Translation UI“ auf EntwĂŒrfen editiert wurden.

Einige User-Interface-Fixes

Die Kommentar-Übersichtsseite im Backend besitzt nun z.B. nun bessere Filterfunktionen.

Batch-System-Fix

Ein Problem, bei welchem eine „race condition“ auftreten konnte, wurde behoben.

Improvements

„Content authoring and site administration improvements:“ Wieder entfernt wurde u.a. der große "Save and keep as published"-Button am Ende der Node-Formulare. Auch aus unserem Alltag bei erdfisch kann ich bestĂ€tigen, dass viele Redakteure ĂŒbersehen haben, dass der Button einen Aufklapp-Pfeil besaß, um auf "unpublished" zu switchen. Nun haben wir wieder die gute alte "Published"-Checkbox, jedoch an einer besseren Stelle: direkt ĂŒber dem Button. So kann man nicht ĂŒbersehen, welchen Status der Inhalt beim speichern haben soll.

Weitere Verbesserungen betreffen unter anderem „REST & API-First“, „performance and scalability“, „developer experience“ und „automated testing“. Außerdem sind die Administrationsseiten "Kommentare" (/admin/content/comment) und "Recent log messages" (/admin/reports/dblog) nun echte Views, die der Administrator nach eigenen WĂŒnschen anpassen kann.

Sonstiges

Drush 8.1.12 benötigt

Wer Drush mit Drupal 8.4 verwenden möchte, sollte ein Update auf mindestens Drush 8.1.12 vornehmen. Wer möchte kann in dem Zuge auch direkt Drush 9 ausprobieren.

Major-Version-Update fĂŒr Symfony und jQuery (Symfony 3.2 / jQuery 3)

Die Dependencies jQuery und Symfony haben beide einen großen Versionssprung von 2 auf 3 erfahren. Es ist also sehr wichtig, dass alle Seiten, die upgedatet werden sollen, vorher ausgiebig getestet werden, um zu vermeiden, dass es durch den Versionssprung zu Bugs kommt. Eigentlich muss es nicht erwĂ€hnt werden, aber: NICHT BLIND ODER AUTOMATISIERT UPDATEN!!!

Internet Explorer 9 und 10 werden nicht mehr unterstĂŒtzt

Da Microsoft im April 2017 den Support fĂŒr IE 9 & 10 eingestellt hat, folgt nun auch Drupal diesem Beispiel. Es wird somit keine Sicherheits-Updates und Fixes fĂŒr IE 9 & 10 mehr geben. Lange von vielen Frontend-Devs erwartet, bedeutet dies nun, dass wir uns auf viele tolle neue CSS3-Features freuen können, wenn auch teilweise immer noch mit Polyfills. CSS-Grids z.B. sind nun kein Ding der Unmöglichkeit mehr, wenn man versucht, alle Browser zu unterstĂŒtzen, die Drupal auch offiziell unterstĂŒtzt. Die bisher im Core vorhandenen Polyfills & Hacks fĂŒr IE 9 & 10 werden mit Drupal 8.5 dann komplett aus dem Core verschwinden.

Profilbild Peter Gerken

Peter Gerken

Frontend Developer