Datenstrom Yellow 0.7.5: Ein Release für Entwickler
Datenstrom Yellow 0.7.5 ist da! Dieses Release ist vor allem für Entwickler interessant, da es die Veröffentlichung von Plugins und Themes vereinheitlicht.
Neues Release-Plugin
Alle Entwickler haben ab sofort die Möglichkeit, ihre Werke in das offizielle Plugin-Repository einzutragen. Zwar war dies auch bisher schon möglich, jedoch konnten Plugins und Themes von Drittanbietern nicht über die Update-Funktion von Datenstrom Yellow aktualisiert werden. Das Aktualisieren umfangreicherer Websites war daher etwas mühsam.
Mit dem neuen Release-Plugin ist es ab sofort möglich, beim Veröffentlichen eines Plugins oder Themes dieses automatisch in die Versions-Metadaten der offiziellen Repositorys einzutragen. Hierzu müssen auf GitHub die offiziellen Plugin- und Theme-Repos geforkt und auf der lokalen Festplatte als Git-Projekt abgelegt werden. Anschließend werden in der Yellow-Konfiguration mittels ReleasePluginsDir
sowie ReleaseThemesDir
die Pfade zu den Projekt-Ordnern hinterlegt, des Weiteren mit ReleaseSoftwareDir
der Pfad zum Stammverzeichnis aller eigenen Yellow-Projekte, z. B. der lokale GitHub-Ordner.
Die Veröffentlichung eines Plugins oder Themes wird zunächst durch Erhöhen der Versionsnummer im Quellcode vorbereitet. Ist ein Plugin bereit für die Veröffentlichung, genügt dann ein einfacher Befehl auf der Kommandozeile. Während php yellow.php release
sämtliche Plugins und Themes auf Änderungen der Versionsnummer prüft, ist es auch möglich, durch Angabe eines Ordnernamens nur bestimmte Projekte zu veröffentlichen, z. B.: php yellow.php release yellow-plugin-example
. Das Script trägt automatisch die neue Versionsnummer in die Dokumentationsdatei und die zum Plugin oder Theme gehörende Update.ini ein, und hinterlegt sie ebenfalls in der lokalen Kopie der offiziellen Yellow-Repos. Als letzter Schritt wird aus dem eigenen Fork heraus noch ein Pull-Request auf Github bei Datenstrom eingereicht, welchen die Entwickler dann mit dem offiziellen Repository zusammenführen, sofern alles geklappt hat. Um Konflikte im Code zu vermeiden, sollte vor jeder Veröffentlichung zunächst der sogenannte Upstream-Branch, also die jeweils aktuelle Version des geforkten Repositorys, mit dem Master-Branch des eigenen Forks zusammengeführt werden. Nun ist die neue Version über den Yellow-Updater verfügbar. Erscheint wieder eine neue Version, wird einfach nur das Release-Kommando neu ausgeführt und die Änderungen per Pull-Request bei Datenstrom zur Veröffentlichung eingereicht.
Änderungen in den Update-Metadaten
Durch die verbesserte Software-Aktualisierung ergeben sich für Entwickler auch Änderungen in der zu einem Plugin oder Theme gehörenden Update.ini. Das Release-Plugin erkennt jedoch das alte Format und passt es automatisch an. Meine Plugins wurden bereits angepasst und sind in den neuen Updater integriert worden. Neu dabei ist ein Antispam-Plugin, welches als alternative Verschlüsselung von E-Mail-Adressen vorgesehen ist, und statt der leicht knackbaren HTML-Entitäten des Markdown-Parsers mit einer Kombination aus ROT13 sowie Modifizierung der Schreibrichtung mittels CSS arbeitet. Weitere Plugins, darunter die Shariff-Buttons wurden auch im Code auf den neuesten Stand gebracht.