Förderjahr 2017 / Project Call #12 / ProjektID: 2161 / Projekt: FoodCoopShop
Es wurde also Zeit für einen Umstieg von CakePHP 2 auf die Version 3. Die Unterschiede der Versionen sind groß, das Refactoring dementsprechend aufwändig. Nach fast zwei Monaten Arbeit ist das Werk jetzt aber vollbracht :-)
Vorteile
Der Umstieg auf die Version 3 brachte eine Menge Vorteile mit sich: Neben einem von Grund auf verbessertem ORM (object-relational mapping) waren dies auch die Kompatibilität mit aktuellen Dependencies (z.B PHPUnit) und die Verwendung des Datenbank-Migration-Tools Phinx. Gerade als Open-Source-Software müssen Software-Updates (die natürlich auch Datenbank-Änderungen mit sich bringen) für alle, die die Software selbst hosten, reibungslos funktionieren.
Performance
Das einfacher zu bedienende und zugleich umfangreichere ORM bietet auch eine bessere Performance. Besonders das Darstellen von größeren kumulierten Datenmengen (z.B. alle bestellten Produkte der letzten Jahre, gruppiert nach Produkt) funktioniert jetzt um bis zu zwei Drittel schneller.
Grundlage für neue Funktionen
Der User bekommt - abgesehen von der besseren Performance - von diesem Major-Release-Update nicht viel mit, denn das User-Interface ist großteils gleich geblieben. Das Update ist aber die Grundlage für alle weiteren Features, die über die Netidee gefördert werden und die von mir in den kommenden Monaten umgesetzt werden.
Das Update wird Bestandteil der Ende März veröffentlichten Version v2.0, die hier downgeloadet werden kann: https://www.foodcoopshop.com/download/
"Meine" Foodcoop, der Fairteiler in Scharnstein, läuft bereits auf der neuen Cake-Version und schnurrt wie ein Kätzchen :-) https://www.fairteiler-scharnstein.at