Problem med plugin-program för Composer vid uppgradering till Adobe Commerce 2.4.4
Den här artikeln innehåller en lösning för att undvika problem med plugin-program för disposition när du uppgraderar från Adobe Commerce 2.4.3 och tidigare till Adobe Commerce 2.4.4 eller senare (när framtida versioner släpps).
Beskrivning description
Miljö
- Adobe Commerce lokalt, alla versioner när de uppdateras till 2.4.4 eller senare (när de släpps)
- Adobe Commerce i molninfrastruktur, alla versioner när de uppdateras till 2.4.4 eller senare (när de släpps)
- Magento Open Source, alla versioner vid uppdatering till 2.4.4 eller senare (när de släpps)
Problem/symtom
När du uppdaterar till Adobe Commerce 2.4.4 eller senare efter juli 2022 kan du få en varning från dispositionen om plugin-program.
Steg som ska återskapas
Krav: Adobe Commerce 2.4.3 eller tidigare är installerat.
- Starta uppgraderingen enligt beskrivningen i Utför en uppgradering.
- Kör Composer-uppdateringskommandot för att uppgradera Adobe Commerce-programmet.
Förväntade resultat
Uppgraderingen är klar.
Faktiska resultat
Installationen misslyckas med ett fel som liknar följande:
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 591 installs, 0 updates, 0 removals
- Installing laminas/laminas-dependency-plugin (2.2.0): Extracting archive
laminas/laminas-dependency-plugin contains a Composer plugin which is currently not in your allow-plugins config. See https://getcomposer.org/allow-plugins
Do you trust "laminas/laminas-dependency-plugin" to execute code and wish to enable it now? (writes "allow-plugins" to composer.json) [ y,n,d,?] y
Plugin initialization failed (require(app/etc/NonComposerComponentRegistration.php): failed to open stream: No such file or directory), uninstalling plugin
- Removing laminas/laminas-dependency-plugin (2.2.0)
Install of laminas/laminas-dependency-plugin failed
[ ErrorException]
require(app/etc/NonComposerComponentRegistration.php): failed to open stream: No such file or directory
Orsak
Efter juli 2022 ändrar Composer standardvärdet för alternativet allow-plugins till {} och plugin-program läses inte in längre om det inte tillåts.
Upplösning resolution
-
Lägg till följande i din
composer.jsonfil, beroende på hur du har installerat Adobe Commerce:-
Om projektet har skapats med
composer create-project-kommandot:code language-none "config": { "allow-plugins": { "dealerdirect/phpcodesniffer-composer-installer": true, "laminas/laminas-dependency-plugin": true, "magento/*": true } }- Om projektet har skapats på ett annat sätt och inte har
dealerdirect/phpcodesniffer-installer" in "require-dev-avsnitt:
code language-none "config": { "allow-plugins": { "laminas/laminas-dependency-plugin": true, "magento/*": true } } - Om projektet har skapats på ett annat sätt och inte har
-
-
När du har uppdaterat filen
composer.jsonkör du kommandotcomposer updateoch startar om uppgraderingsprocessen.