Shopware 6.4.X mit PHP 8.1

Servus liebes Forum,

ich habe vorhin gesehen, dass ich mein Shopware 6 bei Mittwald noch auf der PHP 7.4-latest laufen habe. Shopware ist ja bereits mit PHP 8 kompatibel.

Läuft auch alles einwandfrei unter Shopware 8.1, wenn ich allerdings mein selbst geschriebenes Theme zuordnen möchte, dann kommt jedes Mal: Kann nicht zugeordnet werden…

Muss das in der composer.json irgendwie als kompatibel gekennzeichnet werden? Oder klappt das zurzeit einfach noch nicht?

Wäre über einen Tipp sehr dankbar! :wink:
Beste Grüße
Tom

Ich habe das gleiche Problem … schon zu einer Lösung gekommen? :slight_smile:

Leider nicht, arbeite weiter mit der 7.4

Schade, danke trotzdem. :slight_smile:

Hast du es mal versucht über die CLI Befehle zuzuweisen, da kommen in der Regel mehr Infos als über das Backend, vielleicht gibt dir das einen Hinweis, warum du es nicht zuweisen kannst.

In der error.log steht gewiss der Fehler drin. Einfach dort nachsehen. Bei mir läuft Shopware unter PHP 8.0 ohne Probleme.

Hallo, wird Shopware 6.4.8.1 von PHP 8.1.3 im März 2022 unterstützt?

Auszug: Shopware 6 ✗ Bisher keine Unterstützung von PHP 8.1

Wie komme ich zu der Information?

MfG
sven-sw

Shopware unterstützt PHP 8.1 sobald es im Changelog steht.

Die Developer geben an: PHP 7.2.0 or higher

Wie hätte ich vorab feststellen das PHP 8.1 nicht unterstützt wird?

Wie finde ich die Changeloginformation zu der PHP 8.0 Unterstützung?

Wo wird Dokumentiert welche neueste PHP Version unterstützt wird?

Wenn man sich den Changelog durchliest, dann findet man entsprechende Informationen.

NEXT-10402 - Mindest-PHP-Version auf PHP 7.4 angehoben
NEXT-12242 - PHP 8.0 Kompatibilität hinzugefügt

Für Software generell würde ich sagen, dass Aussagen wie PHP 7.2.0 or higher immer auf den Zeitpunkt der Veröffentlichung bezogen werden müssen. Sonst muss man an so viele Stellen die Dokumentation aktualisieren, wenn sich irgendeine Komponente, etc. geändert hat.

Das sind aber Tickets die Du verlinkt hast.

Wie findet ein Neueinsteiger das aktuellste PHP Release was mit Shopware 6.4.x funktioniert?

Erst installieren, dann feststellen oh funktioniert doch nicht, so wie bei mir?

Beim Durchlaufen der Installationsroutine gibt es gleich am Anfang einen Checker für die System Requiremnts. Der sagt Dir ziemlich genau, was geht und was nicht. Shopware 6 - First Steps - Installation

Die Tickets sind Bestandteil des Changelog.

@marco.steinhaeuser ohne es gerade getestet zu haben, ich glaube es wird nur die Minimum-Konfiguration für PHP angezeigt, nicht das Maximum.

1 „Gefällt mir“

Richtig, dann ist der Server ab schon fertig.

Gewöhnlich schaue ich immer vorher was so benötigt, bzw. möglich ist.

Okay, ich hab mir das nochmal angeschaut und spüre, was Du fühlst :smiley:

Um Deine Frage(n) konkret zu beantworten: Ja, Shopware sollte in der aktuellen Version mit PHP 8.1 und MariaDB 10.7 laufen.

Ich fände es auch glücklicher, wenn man auf einen Ruck nicht nur die Minimalanforderungen in den Systemvoraussetzungen sieht sondern pro aktueller Version auch, auf welchen PHP- und Datenbankversionen getestet wurde. Ich sehe zu, was ich da für die Zukunft machen kann.

1 „Gefällt mir“

PHP 8.1

Bist Du dir da sicher?

Da habe ich es nicht hinbekommen.

Was nicht umbedingt was heißen muss, ich bin ein noob.

Yep, seit 6.4.8.0: Shopware Issuetracker

1 „Gefällt mir“

Ich habe einen Shop mit der Version 6.4.8.2 unter PHP 8.1.3 laufen. (Ubuntu 20.04)

Nun habe ich versucht auf die aktuelle Version 6.4.9.0 zu aktualisieren und erhalte folgende Fehler:

Deprecated: Return type of Pimple\Container::offsetExists($id) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/pimple/pimple/src/Pimple/Container.php on line 133

Deprecated: Return type of Pimple\Container::offsetGet($id) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/pimple/pimple/src/Pimple/Container.php on line 98

Deprecated: Return type of Pimple\Container::offsetSet($id, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/pimple/pimple/src/Pimple/Container.php on line 79

Deprecated: Return type of Pimple\Container::offsetUnset($id) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/pimple/pimple/src/Pimple/Container.php on line 143

Deprecated: Return type of Slim\Collection::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 112

Deprecated: Return type of Slim\Collection::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 124

Deprecated: Return type of Slim\Collection::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 135

Deprecated: Return type of Slim\Collection::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 145

Deprecated: Return type of Slim\Collection::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 155

Deprecated: Return type of Slim\Collection::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 165

Deprecated: Return type of Slim\Collection::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 112

Deprecated: Return type of Slim\Collection::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 124

Deprecated: Return type of Slim\Collection::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 135

Deprecated: Return type of Slim\Collection::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 145

Deprecated: Return type of Slim\Collection::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 155

Deprecated: Return type of Slim\Collection::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Collection.php on line 165

Fatal error: Uncaught RuntimeException: Unexpected data in output buffer. Maybe you have characters before an opening <?php tag? in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php:621 Stack trace: #0 /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(317): Slim\App->finalize() #1 /var/www/mastersoles-shop/vendor/shopware/recovery/Update/index.php(39): Slim\App->run() #2 /var/www/mastersoles-shop/public/recovery/update/index.php(6): require_once(’…’) #3 {main} thrown in /var/www/mastersoles-shop/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php on line 621

Wenn ich das ganze aber mit php 8.0.16 oder 7.4.28 durchführe tritt dieser Fehler nicht auf.

Nachdem ich nun die php Version, nach dem Update, wieder auf die 8.1.3 gestellt habe,
scheint der Shop aber richtig zu funktionieren.

Könnte das Problem mit der Updateroutine zusammen hängen?

Kann jemand dieses Problem nachvollziehen?

Shopware ist noch nich für PHP 8.1 ausgelegt.

Die Update-Routine ist anscheinend nicht 8.0 kompatibel, obwohl es so angegeben ist. Gab erst heute ein Forenbeitrag dazu.

Problem mit den Update auf 6.4.11.1 unter PHP 8 besteht weiter, zurück auf 7.4.29 und das Update läuft problemlos durch.