[Kobv-opus-tester] OPUS 4 mit PHP 8.1 (Beta)

Jens Schwidder schwidder at zib.de
Di Feb 7 16:33:11 CET 2023


Hallo,

seit heute sind die Anpassungen für PHP 8.1 auf dem Branch "4.7.2" 
verfügbar.

https://github.com/OPUS4/application/tree/4.7.2

Auf GitHub wird dieser Branch nun automatisch mit PHP 7.1, 7.4 und 8.1 
getestet. Die Tests laufen erst einmal durch.

Da sehr vielen Anpassungen notwendig waren, insbesondere für PHP 8.1, 
ist es wichtig und wäre sehr hilfreich, wenn diese Version vor dem 
Release von OPUS 4.7.2 von möglichst vielen Leuten intensiv getestet 
würde. Nicht alles ist durch automatische Tests abgedeckt und manche 
Probleme treten auch erst mit echten Daten oder lokalen Besonderheiten 
auf. Die Hosting-Teams im BSZ und KOBV werden anfangen mit einzelnen 
Instanzen zu testen.

Probleme können auf verschiedene Art gemeldet werden.

- Kommentar in GitHub Discussions
   https://github.com/orgs/OPUS4/discussions/6
- GitHub Issue
   https://github.com/OPUS4/application/issues
- hier auf der Mailing-Liste
- An die Hosting-Kontakte
- E-Mail direkt an mich (bitte nur im Ausnahmefall)

Wenn alles funktioniert, wäre es gut auch das zu wissen. Wir werden uns 
in den nächsten Wochen mit den restlichen offenen Issues für OPUS 4.7.2 
beschäftigten und erst einmal auf Feedback warten.

Falls sich zeigt, dass die Version funktioniert, könnte man kurzfristig 
den aktuellen Stand als Release veröffentlichen und alles was dann noch 
offen ist, auf eine spätere Version verschieben, damit im Betrieb zügig 
auf PHP 8.1 umgestellt werden kann.

OPUS 4.7.2 ist noch nicht kompatibel mit PHP 8.2. Dafür sind weitere 
Arbeiten notwendig. Voraussichtlich wird das im Laufe des Jahres mit 
OPUS 4 v5.0 kommen. PHP 8.1 wird aber auch noch noch bis November 2024 
mit Sicherheitsupdates versorgt. Mit OPUS 4 v5.0 wird dann vermutlich
die Kompatibilität mit PHP 7 wegfallen.

Weitere Hinweise zu 4.7.2
-------------------------

Durch die vielen Änderungen wäre es insbesondere für Instanzen mit 
lokalen Anpassungen wichtig, zu prüfen, ob es beim Wechsel auf 4.7.2 
Probleme gibt.

Allgemein getestet werden, kann auch mit Vagrant. Damit kann man leicht 
eine VM hochfahren in der OPUS 4.7.2 dann mit PHP 8.1 läuft. Das geht 
mit Linux, Windows und Mac OS-X.

https://github.com/OPUS4/application/wiki/Vagrant

Tests mit PHP 7.1 sind auch noch nützlich, weil sehr viel Code angefasst 
wurde, nicht nur für die Kompatibilität mit PHP 8.1. Mit der neueren PHP 
Version ist die Wahrscheinlichkeit von Problemen aber wesentlich höher.

Die Suchfunktionen sollten besonders aufmerksam getestet werden. Für die 
Suche ist es nicht möglich den selben Code für PHP 7 und 8 zu verwenden. 
Daher gibt es jetzt "opus4-search" in zwei Varianten, 4.7.2 für PHP 7 
und 4.8 für PHP 8. Composer löst das automatisch, abhängig von der 
lokalen PHP Version, auf. Die Suche für PHP 8 verwendet Solarium 6 
(anstelle von 3) als Client für Solr. Das scheint zu funktionieren, aber 
bei den automatischen Tests zeigt die neue Version noch ein geändertes 
Verhalten, dass möglicherweise Probleme verursachen kann. Vermutlich 
wird die neue Solarium 6 API noch nicht ganz richtig von OPUS verwendet.

Die Konfiguration für Solr hat sich auch ein wenig verändert. Die Datei
"application/configs/config.ini.template" wurde entsprechend angepasst.
Zusätzlich zu "path" wird jetzt "core" verwendet.

searchengine.solr.default.service.default.endpoint.localhost.path
searchengine.solr.default.service.default.endpoint.localhost.core

Der Wert für "path" ist abhängig von der Solarium-Version, z.B.

PHP 7 (Solarium 3)

.path = /solr
.core = opus4

PHP 8 (Solarium 6)

.path = /
.core = opus4

"core" ist der Name des Solr-Cores und "path" die URI für Solr. Die 
Installationsskripte wurden noch nicht für die neue Konfiguration 
angepasst.


Weitere Fragen oder Hinweise gerne über einen der oben genannten Kanäle. 
Wir freuen uns auf Ihr Feedback.

Vielen Dank und schöne Grüße

Jens Schwidder

-- 
==============================================================
Jens Schwidder
Kooperativer Bibliotheksverbund Berlin-Brandenburg (KOBV)
c/o Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB)
Takustr. 7, D-14195 Berlin
Telefon: (030) 841 85 - 308
Telefax: (030) 841 85 - 269
  E-Mail: schwidder at zib.de
     WWW: http://www.kobv.de
==============================================================


Mehr Informationen über die Mailingliste Kobv-opus-tester