Dans le cadre du développement de Phyxo, j'utilise Symfony. Je suis en train de préparer la version 4.0.0 de Phyxo et je viens de mettre à jour Symfony en version 7.2.0. La version est très récente et je viens de tomber sur un bug bizarre qui est apparu avec cette mise à jour.
An exception has been thrown during the rendering of a template ("Warning: Undefined variable $_v0").
Le message est un peu abscons mais en recherchant un peu je suis tombé sur ce le ticket qui en parle et le ticket qui corrige le problème. J'ai alors récupéré le fichier contenant la correction. Je pourrais le mettre à l'endroit correct dans le répertoire vendor. Mais à la première mise à jour, je perdrais bien évidemment cette correction.
Une solution (je ne doute pas qu'il y en ait d'autres) est de mettre ce fichier dans un répertoire dédié. Je l'ai mis dans un répertoire .override. Puis dans le fichier composer.json il faut préciser que ce fichier remplace le fichier originel avec la syntaxe suivante sous la propriété autoload.
"autoload": {
"exclude-from-classmap": [
"Symfony\\Bridge\\Twig\\NodeVisitor"
],
"files": [".overrides/TranslationDefaultDomainNodeVisitor.php"],
"psr-4": {
"Phyxo\\": "src/Phyxo/",
"App\\": "src/",
"Plugins\\": "plugins/",
"Themes\\": "themes/"
}
},