Paket fabpot / php-cs-fixer ist Nachricht in Magento 2 aufgegeben

Antworten:

12

Da die vorhandenen Antworten nicht ganz klar sind:

  1. Dies ist kein Fehler, nur eine Warnung. Das aufgegebene Paket ist immer noch vorhanden und Magento hat die Abhängigkeit bereits in Version 2.1 ersetzt, sodass Sie sich darüber keine Gedanken machen müssen.
  2. Es scheint Fälle zu geben, in denen die Warnung weitere Installationen verhindert. Führen Sie in diesem Fall oder wenn Sie die Warnung entfernen und die aktuelle Version von phpcsfixer (ein Entwicklungswerkzeug, das für Magento nicht erforderlich ist) verwenden möchten, die folgenden Befehle in Ihrem Projektstamm aus:

    composer remove fabpot/php-cs-fixer
    composer require --dev friendsofphp/php-cs-fixer

    Nicht bearbeiten composer.jsonoder gar composer.lockdirekt, um Konflikte zu vermeiden!

Fabian Schmengler
quelle
3

Es ist eine Abhängigkeit in Magento2, wie es dort heißt. Sie werden es bald ändern. Magento nutzt diese Abhängigkeit, sodass ich nicht glaube, dass Sie etwas dagegen tun können.

Claudiu Creanga
quelle
3

Ich hatte das gleiche Problem bei der Installation von Magento 2.1.8 mit Composer.

Dies ist nur eine Warnung, kein Fehler. Sie können diese Warnung entweder ignorieren oder beseitigen, indem Sie das aufgegebene Paket durch die erforderliche Version von phpcsfixer in Ihrer Magento-Installation ersetzen.

Führen Sie die folgenden Befehle in Ihrem Projektstamm aus, um diese Warnung zu beheben:

composer remove fabpot/php-cs-fixer
composer require --dev friendsofphp/php-cs-fixer 2.1.1

Hinweis: Dies ist ein bekanntes Problem # 7310 und Magento hat diese Abhängigkeit bereits in der nächsten Hauptversion Magento 2.2 aktualisiert.

Und noch etwas, bitte nicht direkt bearbeiten composer.jsonoder composer.lockablegen. Es kann zu Konflikten kommen, wenn Sie das Magento in Zukunft aktualisieren.

Prost!

Rahul Kachhadiya
quelle
2

Das gleiche gilt für Magento 2.0.7 bis 2.1.0, nachdem ich den Patch MDVA-532 installiert habe (ich verwende PHP 5.6.20). Das Upgrade wurde mit der obigen Meldung abgebrochen. Jetzt geht nichts mehr.

Um dieses Problem zu beheben, müssen Sie in composer.json> "require-dev" die Zeile ändern:

-"fabpot/php-cs-fixer": "~1.2"

mit

 -"friendsofphp/php-cs-fixer": "~2.0".

Dies entfernte fabpot / php-cs-fixer und installierte friendsofphp / php-cs-fixer.

Upgrade aber auch unterbrochen.

George AB
quelle
Magento wird es bald ändern.
Praful Rajput
1

Das konnte ich beheben, indem ich die Datei composer.jason durch Ersetzen aktualisierte

"fabpot/php-cs-fixer": "~1.2"

mit

"friendsofphp/php-cs-fixer": "~2.0"

und auf der composer.lock ersetzen

"fabpot/php-cs-fixer": "0.4.0"

mit

"friendsofphp/php-cs-fixer": "0.4.0"

und ersetzen

"fabpot/php-cs-fixer": "1.7.*"

mit

"friendsofphp/php-cs-fixer": "2.0.*"
S.Mikhail
quelle
0

Ich habe das gleiche Problem auch getroffen. Aber jetzt habe ich es schon gelöst.

Ersetzen Sie "fabpot/php-cs-fixer": "~1.2"durch -"friendsofphp/php-cs-fixer": "~2.0"in composer.jsonund composer.lockfile. Alles geht in Ordnung.

user50375
quelle
0

Ich hatte das gleiche Problem.

Das Problem war, dass ich fabpot / php-cs-fixer durch friendsofphp / php-cs-fixer ersetzte, ohne es auch in composer.lock zu ersetzen. ich rannte

composer self-update
composer clear-cache

Jedes Mal, wenn ich versuchte, "Composer Update" auszuführen, hing es an den Aktualisierungsabhängigkeiten. Sie können dies durch Laufen sehen

composer update -vvv

Endlich habe ich die Änderungen an require-dev in composer.json rückgängig gemacht und alle haben die Magento-Version auf 2.1.10 aktualisiert

Dann entschied ich mich dafür

composer remove fabpot/php-cs-fixer 

Und dann

composer require --dev friendsofphp/php-cs-fixer

Die Installation schlägt jedoch fehl, da die Versionsanforderungen für symfony / console von friendsofphp / php-cs-fixer v.2.8 PHP 7.1 erfordern. Das ist das Problem, weil Magento 2.1 diese Version von PHP nicht unterstützt. Friendsofphp / php-cs-fixer kann daher nur mit Magento 2.2 installiert werden

Iveta Allogenes
quelle
-2

Es ist für meinen Fall so festgelegt.

  1. Zuerst als Administrator ausführen.
  2. Führen Sie als Nächstes den Befehl composer install in der Eingabeaufforderung Node.js aus.
Jamsheed
quelle