Problemas con los complementos del Compositor al actualizar a Adobe Commerce 2.4.4

Este artículo proporciona una solución para evitar problemas con los complementos del compositor al actualizar desde Adobe Commerce 2.4.3 y versiones anteriores a Adobe Commerce 2.4.4 o superiores (cuando se publiquen versiones futuras).

Descripción description

Entorno

  • Adobe Commerce local, cualquier versión al actualizar a 2.4.4 o superior (cuando esté disponible)
  • Adobe Commerce en la infraestructura en la nube, cualquier versión al actualizar a 2.4.4 o superior (cuando esté disponible)
  • Magento Open Source, cualquier versión al actualizar a 2.4.4 o superior (cuando esté disponible)

Problema/Síntomas

Al actualizar a Adobe Commerce 2.4.4 o superior después de julio de 2022, es posible que Composer le avise sobre los complementos.

Pasos a seguir

Requisitos previos: Adobe Commerce 2.4.3 o anterior está instalado.

  1. Inicie la actualización tal como se describe en Realizar una actualización.
  2. Ejecute el comando Composer update para actualizar la aplicación de Adobe Commerce.

Resultados esperados

La actualización se ha realizado correctamente.

Resultados reales

La instalación falla con un error similar al siguiente:

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

Causa

A partir de julio de 2022, el Compositor cambia el valor predeterminado de la opción allow-pluginsa {} y los complementos ya no se cargarán a menos que se permita.

Resolución resolution

  1. Agregue lo siguiente al archivo composer.json, según la instalación de Adobe Commerce:

    • Si el proyecto se ha creado con el comando composer create-project:

      code language-none
      "config": {
          "allow-plugins": {
              "dealerdirect/phpcodesniffer-composer-installer": true,
              "laminas/laminas-dependency-plugin": true,
              "magento/*": true
          }
      }
      
      • Si el proyecto se creó de otra manera y no tiene la sección dealerdirect/phpcodesniffer-installer" in "require-dev:
      code language-none
      "config": {
          "allow-plugins": {
              "laminas/laminas-dependency-plugin": true,
              "magento/*": true
          }
      }
      
  2. Después de actualizar el archivo composer.json, ejecute el comando composer update y reinicie el proceso de actualización.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f