Fehler nach Update auf 5.6 - Undefined class constant 'VERSION'

Update war problemlos … danach weder Frontend noch Backend, auch nach cache files löschen

error.log:

PHP Fatal error:  Uncaught Error: Undefined class constant ‘VERSION’ in /var/xxx/engine/Shopware/Plugins/Community/Frontend/SwagPaymentPaypal/Bootstrap.php:146

zum Glück hab ich einen Snapshot vor dem Update angefertigt :-/ bin wieder zurück gerollt

Das alte PayPal Plugin ist noch nicht freigegeben. Dazu kommt in den nächsten Wochen ein Update für 5.6. Solange am besten warten.

Das solllte das Update aber auch anzeigen.

1 „Gefällt mir“

Hallo zusammen,

gibt es dazu etwas neues? Das Update ist durchgeflaufen (ohne ein Hinweis auf das veraltete Plugin). Leider habe ich kein Snapshot. Kann ich das Plugin manuell deinstallieren?

Vielen Dank und einen schönen Tag!

Thomas

Zu dem Fehler gibt es einen Hotfix von Moritz im Forum, mal suchen. https://forum.shopware.com/discussion/comment/251975/#Comment_251975
Wenn es „keine Warnung“ in dem entsprechendem Tab gab, kann es NUR eine Erklärung geben: Der Shop stammt noch aus der 4.6 oder früher Ära und PayPal war noch ein Core-Plugin.
Wenn der Shop als 5er aufgesetzt wurde, gab es 100% die Warnung beim Update, man muss nur mal genau hingucken, ehe man *clickt*  Sticking-out-tongue

Ist dieser Fehler beim erstellen des SEO Indexes der selbe?

array (
  'error' => 'Undefined class constant \'VERSION\'',
)

Über den Cronjob bekomme ich den Fehler. Im backend selbst kann ich den SEO Index garnichts refreshen. Liegt das eventuell am Elasticsearch?

@Pua7 schrieb:

Ist dieser Fehler beim erstellen des SEO Indexes der selbe?

array (
‚error‘ => ‚Undefined class constant 'VERSION'‘,
)

Über den Cronjob bekomme ich den Fehler. Im backend selbst kann ich den SEO Index garnichts refreshen. Liegt das eventuell am Elasticsearch?

Denke nicht, dass das bei SEO etwas mit Paypal zu tun hat. Der Fehler kann quasi in jedem Plugin auftreten, was nicht mit 5.6 kompatibel ist. 
Am besten schaust du mal ins Log nach der kompletten Fehlermeldung.

AH01071: Got error 'PHP message: PHP Fatal error: Uncaught Error: Undefined class constant 'VERSION' in /var/www/vhosts/shop.com/httpdocs/ShopDir/engine/Shopware/Plugins/Community/Core/SwagSecurity/Bootstrap.php

Ist das Swag Security plugin noch nicht kompatibel zu 5.6? Mit deaktiviertem Plugin läuft der SEO Cron auch wieder.

Bzw. ja laut Store ist es nicht zu 5.6 kompatibel. Warum verhält sich das Plugin dann nicht neutral sondern führt zu so einem Fehler?

Das Security Plugin brauchst du ja auch nur, wenn du eine ältere Shopware-Version einsetzt. Entsprechend ist es natürlich aktuell auch nicht kompatibel. Da es im Bereich der 5.6 einige technische Anpassungen gab, wurden als “Deprecated” (veraltet) markierte Stellen entfernt. Dies kann dann natürlich bei Plugins zu Inkompatibilitäten führen. Deshalb ist es immer wichtig, alle nicht kompatiblen Plugins vor/nachher zu updaten, oder zu warten bis ein Update kommt. Gibt es keine Updates mehr müssen diese entfernt werden - das Deaktivieren/Deinstallieren reicht oft nicht aus.

Hallo @pua7! Welche Version des Security-Plugins ist denn installiert bei Dir? Seit der Version 1.1.12 (von Ende 2018) sollte eigentlich kein Zugriff auf diese Konstante mehr enthalten sein.

@hsoebbing schrieb:

Hallo @pua7! Welche Version des Security-Plugins ist denn installiert bei Dir? Seit der Version 1.1.12 (von Ende 2018) sollte eigentlich kein Zugriff auf diese Konstante mehr enthalten sein.

Ich hatte die 1.1.17 installiert. Ich mein das Plugin ist in 5.6 eh erst mal überflüssig. Wenn eine neue Sicherheitslücke entdeckt wird, udated ihr dann das Plugin wieder? Oder gibts da nun einen neuen Mechanismus?

Sobald es ein neues Sicherheitsrelease gibt wird es auch eine neue Version des Plugins geben (die dann auch mit Shopware 5.6 kompatibel markiert wird). Allerdings sollte wie gesagt auch in der 1.1.7 dieses Problem nicht auftauchen, vielleicht löschst Du das Plugin noch einmal und installierst es neu aus dem Store.

@Moritz Naczenski schrieb:

Das alte PayPal Plugin ist noch nicht freigegeben. Dazu kommt in den nächsten Wochen ein Update für 5.6. Solange am besten warten.

Das solllte das Update aber auch anzeigen.

 

Da mein Shop schon seit der Version 4 besteht, ist das alte Paypal Plugin noch im Ordner „Default“ vorhanden und kann ja logischer Weise auch nicht deaktiviert werden. Wie soll da denn ein Update funktionieren, wenn Default Plugins nicht freigegeben sind und auch keine entsprechende Meldung angezeigt wird. Ich finde es ungehörig von Shopware so eine ungenügend getestetes Update auszurollen.

Der Hotfix von Moritz Naczenski hat tadellos funktioniert - vielen Dank dafür.

Schon bei den ersten 5er Versionen hat das Paypal-Plugin im alten Order Probleme gemacht. Das wurde ausführlichst hier im Forum breit getreten. Man mußte dazu nur den Paypal-Order an den passenden Ort verschieben oder löschen und neu installieren.
Shopbetreiber, die mehr als 2 Jahre später den Ordner immer noch im falschen Ordner haben, dürften im Promillebereich zu finden sein.

Abgesehen davon hilft es proaktiv ungemein und trägt zur Wissensbildung bei, wenn man zumindest gelegentlich mal im Forum mit liest.

So ein PHP-Webshop ist eben kein klicki-bunti-Windows-Programm und erfordert entgegen dem verbreiteten Glauben eben Fachwissen bei Betrieb und Pflege.

2 „Gefällt mir“

Wie ist das jetzt mit dem Security-Plugin? Mein Shopware Shop wurde als 4er Version aufgesetzt, bin jetzt bei 5.5.10 und das Security-Plugn wird bei mir als nicht 5.6 kompatibel angezeigt. 

Kann ich das Security-Plugin jetzt deaktivieren und löschen oder muss ich warten bis ein Update kommt?

Kann ich das Security-Plugin jetzt deaktivieren und löschen

JA

1 „Gefällt mir“

Ja, der “Hinweis” von drakon ist mehr als gerechtfertigt. Auch das Forum ist eben nicht nur “nehmen”, sondern auch “geben”. Probleme habe ich immer mit Leuten, die schon mit dem ersten oder zweiten Beitrag im Forum Ansprüche stellen. Ganz einfach: CE? an Community beteiligen. Pro? Support kontaktieren Wink 

ABER: in dem Fall hat SIST-Service gar nicht so Unrecht!
Das der “Updater” KEINEN Warnhinweis zum PayPal ausgibt, hatte ich festgestellt, da eben genau dieses PlugIn schon einmal nicht als “nicht” kompatiebel angemeckert wurde. Und es war schon einmal !nicht! kompatiebel.
Ja, wenn es noch aus früheren SW-Zeiten ein Core-Plugin war, BLEIBT es in diesem Ordner, kann aber ohne Probleme weiter aktualisiert werden, wird aber vom Updater ignoriert - das hatten damals Moritz und ich herausgefunden.
https://forum.shopware.com/discussion/comment/231447/#Comment_231400

In diesem Zusammenhang wurde dann auch von SW fast schon versprochen, dass man zukünftig ggf. den Updater auch Core-PlugIns untersuchen lassen könnte. https://forum.shopware.com/discussion/56954/paypal-installation#Comment_234264

Doch:
Hier trifft Shopware eine “Schuld”, und man kann dem Shopbetreiber auch nicht wirklich vorwerfen, dass er nicht von alleine auf so krude Gedanken kommen könnte, dass es wirklich einen Unterschied macht, ob ein PlugIn Core oder Store ist.