contao / contao-manager

Contao Manager
GNU Lesser General Public License v3.0
85 stars 33 forks source link

Fehler in RecursiveDirectoryIterator.php #668

Closed Babelfisch closed 2 years ago

Babelfisch commented 2 years ago

Beim Update von Contao 4.9.19 auf 4.9.24 kommt in Contao Manager 1.4.10 folgender Fehler:

  - Upgrading contao/manager-plugin (2.11.0 => 2.11.1): Extracting archive
    Update of contao/manager-plugin failed

In RecursiveDirectoryIterator.php line 48:

  RecursiveDirectoryIterator::__construct(/var/www/clients/client1/web11/web/  
  vendor/sensiolabs/ansi-to-html): failed to open dir: No such file or directory

# Process terminated with exit code 1
# Result: General error

Keine Ahnung warum und weshalb. Vorherige Updates hatten noch funktioniert. Auch die Aktualisierung von rocksolid-custom-elements schlägt fehl:

Generating optimized autoload files
Class League\Uri\Schemes\AbstractUri located in ./vendor/league/uri-schemes/src/Schemes/deprecated.php does not comply with psr-4 autoloading standard. Skipping.
Class League\Uri\Schemes\Data located in ./vendor/league/uri-schemes/src/Schemes/deprecated.php does not comply with psr-4 autoloading standard. Skipping.
Class League\Uri\Schemes\File located in ./vendor/league/uri-schemes/src/Schemes/deprecated.php does not comply with psr-4 autoloading standard. Skipping.
Class League\Uri\Schemes\Ftp located in ./vendor/league/uri-schemes/src/Schemes/deprecated.php does not comply with psr-4 autoloading standard. Skipping.
Class League\Uri\Schemes\Http located in ./vendor/league/uri-schemes/src/Schemes/deprecated.php does not comply with psr-4 autoloading standard. Skipping.
Class League\Uri\Schemes\Uri located in ./vendor/league/uri-schemes/src/Schemes/deprecated.php does not comply with psr-4 autoloading standard. Skipping.
Class League\Uri\Schemes\UriException located in ./vendor/league/uri-schemes/src/Schemes/deprecated.php does not comply with psr-4 autoloading standard. Skipping.
Class League\Uri\Schemes\Ws located in ./vendor/league/uri-schemes/src/Schemes/deprecated.php does not comply with psr-4 autoloading standard. Skipping.
in  
  e 571                                                                        
  PHP Fatal error:  Uncaught Error: Class 'Symfony\Bridge\Doctrine\Dependency  
  Injection\AbstractDoctrineExtension' not found in /var/www/clients/client1/  
  web11/web/vendor/doctrine/doctrine-bundle/DependencyInjection/DoctrineExten  
  sion.php:67                                                                  
  Stack trace:                                                                 
  #0 /var/www/clients/client1/web11/web/vendor/composer/ClassLoader.php(571):  
   include()                                                                   
  #1 /var/www/clients/client1/web11/web/vendor/composer/ClassLoader.php(428):  
   Composer\Autoload\includeFile()                                             
  #2 [internal function]: Composer\Autoload\ClassLoader->loadClass()           
  #3 [internal function]: spl_autoload_call()                                  
  #4 /var/www/clients/client1/web11/web/vendor/symfony/http-kernel/Bundle/Bun  
  dle.php(152): class_exists()                                                 
  #5 /var/www/clients/client1/web11/web/vendor/symfony/http-kernel/Bundle/Bun  
  dle.php(68): Symfony\Component\HttpKernel\Bundle\Bundle->createContainerExt  
  ension()                                                                     
  #6 /var/www/clients/client1/web11/web/vendor/symfony/http-kernel/Kernel.php  
  (715): Symfony\Component\HttpKernel\Bundle\Bundle->getContainerExtension()   
  #7 /var/www/clients/client1/web11/web/vendor/symfony/http-kernel/Kernel.ph   
  in /var/www/clients/client1/web11/web/vendor/doctrine/doctrine-bundle/Depen  
  dencyInjection/DoctrineExtension.php on line 67

Caches leeren hilft auch nicht. PHP Version ist 7.4.27

aschempp commented 2 years ago

das sieht nach einem Fehler auf deinem Server oder in deinen Dateien aus. An deiner Stelle würde ich mal den /vendor Ordner löschen und neu installieren. Ansonsten wende dich bitte an das Forum oder Slack (https://to.contao.org/support), da es sich hier bestimmt nicht um einen Fehler im Contao Manager handelt.

Babelfisch commented 2 years ago

Also der Server läuft einwandfrei und der ist auch leistungsfähig. An dem liegt es nicht. Und warum meine „Dateien“ irgendwie kaputt gegangen sein sollen, erschließt sich mir auch nicht.

Ich hatte ja echt gehofft, dass der CM mit Composer 2.0 endlich richtig benutzbar wird aber leider ist das wohl noch nicht so weit. Es gibt kein Update ohne zig Fehler und man braucht Stunden und viele Versuche für das kleinste Update. Auch in diesem Fall funktioniert es nach x Versuchen dann doch auf einmal. An den Dateien und dem Server hat sich dabei aber nichts geändert, also kannst nur am CM oder irgendwas im Ökosystem gelegen haben.

aschempp commented 2 years ago

Ich kann deinen Server nicht beurteilen. Die Fehlermeldung besagt dass die Datei Symfony\Bridge\Doctrine\Dependency Injection\AbstractDoctrineExtension nicht gefunden wurde. Warum nicht, kann dir niemand beantworten. Installiert wird die Datei von Composer, nicht vom Contao Manager oder dem Contao Ökosystem. Also entweder müsste der Fehler in Composer liegen (was ich schwer bezweifle, denn 100'000 Entwickler nutzen den täglich), oder aus irgend einem Grund lief was bei der Installation schief. Zum Beispiel Schreibfehler, Netzwerkprobleme, oder halt 1000 andere Gründe.

Ich versuche hier niemandem die Schuld zu geben, sondern nur zu zeigen dass wir darauf leider keinen Einfluss haben. Ich kann dir nur eine Idee für eine Lösung bieten, und scheinbar hat eine wiederholte Installation aus irgend einem Grund diese Datei plötzlich installiert. Das hätte löschen von /vendor und neu installieren vermutlich auch gemacht.