Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Umstieg auf Laminas (Nachfolger von Zend Framework 3) #183

Open
j3nsch opened this issue May 9, 2019 · 5 comments
Open

Umstieg auf Laminas (Nachfolger von Zend Framework 3) #183

j3nsch opened this issue May 9, 2019 · 5 comments
Assignees
Milestone

Comments

@j3nsch
Copy link
Member

j3nsch commented May 9, 2019

Für 2019 ist der Umstieg von OPUS 4 von Zend Framework 1 auf 3 geplant. Die Planung dafür hat angefangen und es zeichnet sich ab, dass sich dabei sehr viel verändern wird. Fast jede Datei wird verändert oder zumindest verschoben werden.

OPUS 4 Installationen mit den üblichen Anpassungen sollten beim Update keine Probleme haben, aber Veränderungen im Code von Modulen und ähnliches werden manuell migriert werden müssen. Installationen mit größeren Anpassungen sollten sich am besten vorab an das OPUS 4 Entwicklungsteam wenden, z.B. mit einem Kommentar hier oder per E-Mail, so dass überlegt werden kann wie die Migration so einfach wie möglich gestaltet werden kann.

Der Umstieg auf ZF3 ist notwendig, weil ZF1 seit Jahren nicht mehr weiter entwickelt wird und mittlerweile inkompatibel zu aktuellen PHP-Versionen (7.2+) ist. Darüber hinaus unterstützt ZF3 eine modulare Architektur, die es uns ermöglichen wird die Entwicklung von Erweiterungen dezentraler zu gestalten. Ziel ist es z.B. die Entwicklung eines neuen Import- oder Exportformats in einem separaten Repository zu ermöglichen. Eine solche Komponente (Package) kann dann mit Composer zu OPUS 4 Installationen hinzugefügt werden ohne das Eingriffe in den zentralen Code von OPUS 4 notwendig sind.

Die unabhängige Entwicklung von Erweiterungen erfordert natürlich klare und stabile Schnittstellen, damit nicht mit jeder neuen OPUS 4 Version Anpassungen notwendig werden. Die Definition dieser Schnittstellen und internen Formate stellt zusätzliche Arbeit dar, die im Zusammenhang mit dem Umstieg auf ZF3 zumindest geplant und begonnen wird.

Es wird noch zwei oder drei Monate dauern bis der eigentlich Umbau beginnt. Während des Umbaus wird es mehr oder weniger keine parallele Entwicklung geben. Der Umbau selbst, bis zu einer stabilen Version wird vermutlich auch noch einmal mindestens zwei Monate dauern. Die Hoffnung ist, dass wir bis Oktober oder zumindest in 2019 fertig werden.

Nach dem aktuellen Stand der Überlegungen ist abzusehen, dass sich der Code nicht nur innerhalb von Framework und Application verändern wird. Die Module innerhalb von Application werden in eigene Repositorien wandern und manche Funktionen, wie z.B. Export-Formate werden vielleicht noch feiner aufgeteilt werden. Die Application selbst wird voraussichtlich nur noch die Web Resourcen für das User Interface und einige Konfigurationsdateien enthalten.

Einige Details werden sich erst mit dem Umbau ergeben. Der Umbau wird schrittweise erfolgen, so dass in der ersten ZF3-Version vielleicht noch nicht alle hier beschriebenen Ziele umgesetzt sein werden.

@hermann77
Copy link
Contributor

Hallo Jens,
ich wollte Mal nach einem kurzen Update in Sachen Zend Framework 3 fragen. Kann man schon jetzt sagen, wann der Umstieg auf ZF3 (ungefähr) stattfindet.

Danke Dir und beste Grüße
Hermann

@kaiarn
Copy link

kaiarn commented Aug 5, 2020

Eventuell wäre auch der Umstieg auf Laravel anzudenken?
Habe bei folgendem Beispiel schonmal einiges implementieren versucht:
https://github.com/geolba/tethys (getestet mit PostgreSQL, MSSQL, MySQL)

Beste Grüße

@j3nsch
Copy link
Member Author

j3nsch commented Aug 5, 2020

Im Augenblick gibt es keine Pläne auf Laravel umzusteigen. Der Umstieg auf ZF3 bzw. Laminas ist etwas, das wir tun müssen. Der Umstieg auf eine andere Technologie als Grundlage für OPUS 4, wie Laravel, ist zu diesem Zeitpunkt optional. Ohne Laravel zu bewerten, ob Laravel Sinn macht oder ob es vielleicht noch andere Alternativen gäbe, haben wir dafür einfach nicht die Ressourcen.

@j3nsch j3nsch added this to the Umstieg auf Laminas (Zend Framework 3+) milestone Aug 28, 2020
@j3nsch j3nsch pinned this issue Oct 21, 2020
@j3nsch j3nsch self-assigned this Oct 21, 2020
@roschme
Copy link

roschme commented Jan 27, 2021

Hallo Herr Schwidder,

gibt es zum Umstieg auf Zend Framework 3 Neuigkeiten? PHP7.1 wird ja leider nicht mehr gewartet und ein weiterer Einsatz erscheint mir doch als etwas riskant.
Vielen Dank für Ihre großartige Arbeit, beste Grüße!

@j3nsch j3nsch changed the title Umstieg auf Zend Framework 3 Umstieg auf Laminas (Nachfolger von Zend Framework 3) Jan 27, 2021
@j3nsch
Copy link
Member Author

j3nsch commented Jan 27, 2021

Ich habe angefangen den OPUS Code auf Laminas (Nachfolger von ZF3) umzustellen. Das wird noch mindestens 1-2 Monate dauern, ist aber im Augenblick noch schwer abzuschätzen. Es müssen viele Anpassungen im OPUS Code vorgenommen werden, da sich die APIs von Zend/Laminas doch in vielen Details verändert haben und einige Konzepte ausgetauscht bzw. neu eingeführt wurden. Ende Februar sollte ich genauer wissen wieviel Arbeit noch zu erledigen ist.

Wir werden auf eine Version von Laminas bzw. einzelne Pakete umsteigen, die auch noch mit PHP 7.0 laufen, also nicht ganz die neueste Version. Dadurch wird die Entwicklung und der Umstieg im Augenblick einfacher. In einer späteren OPUS Version soll dann auf die aktuellen Laminas Pakete gewechselt werden. Das ist vermutlich nur eine einfach Änderungen der Composer Pakete.

Vermutlich wird es vorher noch einen Zwischenrelease, OPUS 4.7.1, geben, in dem schon einige Vorarbeiten für den Umstieg stecken, aber der leider immer noch mit ZF1 läuft. Bestandteile dieses Releases werden zum Teil extern entwickelt.

@j3nsch j3nsch modified the milestones: Umstieg auf Laminas (Zend Framework 3+), OPUS 4 v5.0 Oct 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants