HendrikD / obiblio

Open Biblio Fork
Other
1 stars 0 forks source link

Kompatibilität mit PHP 7.4 bzw. PHP 8 prüfen #2

Closed HendrikD closed 2 years ago

HendrikD commented 2 years ago

Commit 1 und 2 befassen sich bereits mit utf-8 Kompatibilität, sodass der Großteil der Arbeit für die Unterstützung modernen PHPs möglicherweise bereits getan ist. Auf dem Testsystem konnten nach kurzer Prüfung jedenfalls keine Probleme mit PHP 7 festgestellt werden.

HendrikD commented 2 years ago

Unter PHP 8.0 gibt es einen Fehler. Undefined constant "OBIB_CHARSET" in shared/common.php:105"

LeAchim59 commented 2 years ago

Ich hatte auf meinem Mac mit 7.4 auch ein paar undefinierte Konstanten. Die mit sinnvollen Werten zu definieren sollte doch kein allzu großes Problem darstellen

HendrikD commented 2 years ago

Nein muss aber trotzdem gemacht werden.

HendrikD commented 2 years ago

Alle Konstruktoren müssen vom (sehr) alten Stil function KLASSENNAME(){..} umgewandelt werden in function __construct(){..}

HendrikD commented 2 years ago

Ich habe da jetzt auf einem branch mal angefangen die ganzen Konstruktoren umzuändern um PHP 8.0/8.1 zu ermöglichen. Dann gibt es noch Probleme weil an vielen stellen mit dem veralteten Arrayzugriffsoperator {} statt [] gearbeitet wird. Da PHP keinen Compiler hat fallen die Probleme natürlich auch erst auf wenn man den Code auslöst der noch Probleme hat. Kennt jemand vielleicht ein Tool um mal eine statische Codeanalyse üner eine ganze Codebasis in PHP zu machen? Arbeite aktuell mit Visual Studio Code und das macht erst mal nur eine statische Codeanalyse für geöffnete Dateien. Arbeite beruflich eher mit C++, Java und JavasScript :)

Werde es sonst mal mit phpstan (https://github.com/phpstan/phpstan), psalm (https://github.com/vimeo/psalm) oder phpcheckstyle (https://github.com/PHPCheckstyle/phpcheckstyle) probieren. Bin halt nicht sicher wie welches davon für PHP 8 funktioniert.

LeAchim59 commented 2 years ago

PHP 8 ist derzeit nicht so wichtig. Noch unterstützt ja Strato 7.4. Die Funktionalitäten sollten erst mal Vorrang haben, wir wollen ja schließlich bald mal eröffnen.

HendrikD commented 2 years ago

Das sehe ich anders. 1. Ist das eine gute Arbeit um die Codebasis etwas kennen zu lernen, 2. Ist es einfacher große Refactorings früh statt spät durchzuführen weil dann mögliche Bugs die dadurch entstehen eine größere Wahrscheinlichkeit haben während der Folgeentwicklung aufzufallen und 3. Ist gerade das größte Hinderniss bei der Entwicklung nicht die Entwicklungszeit sondern unklare fachliche Anforderungen.

Das PHP-Upgrade hat keine fachlichen Abhängigkeiten und ist daher aktuell eines der wenigen Themen wo es überhaupt richtig vorangehen kann. Bei den meisten anderen Themen muss man noch viel klären, diskutieren und entscheiden.

LeAchim59 @.***> schrieb am Mo., 11. Juli 2022, 12:05:

PHP 8 ist derzeit nicht so wichtig. Noch unterstützt ja Strato 7.4. Die Funktionalitäten sollten erst mal Vorrang haben, wir wollen ja schließlich bald mal eröffnen.

— Reply to this email directly, view it on GitHub https://github.com/HendrikD/obiblio/issues/2#issuecomment-1180205661, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAHDUVLDVLQAAIT7FCPMJL3VTPWYBANCNFSM52DERGPA . You are receiving this because you modified the open/close state.Message ID: @.***>

LeAchim59 commented 2 years ago

Irgendwie hast Du natürlich recht. Wir werden die fachlichen Anforderungen möglichst bald besprechen.

HendrikD commented 2 years ago

Thema sollte erledigt sein