TYPO3 error con symfony/dependency-injection 7.3.4 bajo PHP < 8.3
Desde el 27 de septiembre de 2025, la nueva versión 7.3.4 de symfony/dependency-injection ha estado causando problemas en entornos TYPO3 13 que ejecutan PHP 8.2.
El trasfondo: En TYPO3 13, el formulario de extensión del sistema utiliza una clase "ConfigurationManager" marcada como readonly. Symfony intenta generar un proxy perezoso de esto, pero esto sólo es compatible a partir de PHP 8.3. Bajo PHP 8.2 esto lleva a una cancelación con el siguiente mensaje de error
Symfony\Component\VarExporter\Exception\LogicException: No se puede generar proxy perezoso con PHP < 8.3: la clase "TYPO3\CMS\Form\Mvc\Configuration\ConfigurationManager" es readonly.Este error sólo se produce en instalaciones basadas en Composer donde se ha realizado una "composer update" en los últimos días o donde TYPO3 ha sido recién instalado en los últimos días. Las instalaciones clásicas con zip o tar.gz no se ven afectadas.
Aunque este error se produce debido a un paquete de terceros, TYPO3 ya ha reaccionado con un parche: https://review.typo3.org/c/Packages/TYPO3.CMS/+/90833 Con la próxima versión de TYPO3, symfony/dependency-injection en la versión 7.3.4 y siguientes se puede utilizar de nuevo.
Soluciones
Bloqueo del compositor
Los proyectos pueden bloquear la versión problemática:
composer req symfony/dependency-injection "^7.3 !=7.3.4"Si symfony/dependency-injection 7.3.5 se libera ANTES de la nueva versión de TYPO3, 7.3.5 también se debe especificar aquí como una exclusión.
Compositor parches
Otra recomendación del canal de TYPO3 core slack es el uso de https://github.com/cweagans/composer-patches. Esto le permite aplicar el parche core https://review.typo3.org/c/Packages/TYPO3.CMS/+/90833/3/typo3/sysext/form/Classes/EventListener/DataStructureIdentifierListener.php directamente en el proyecto TYPO3.
El contenido de esta página se ha traducido automáticamente.
