Contao-Camp 2024
Ergebnis 1 bis 30 von 30

Thema: Warning: include(...composer/InstalledVersions.php): failed to open stream

  1. #1
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Frage Warning: include(...composer/InstalledVersions.php): failed to open stream

    Hallo zusammen,

    ich bekomme nach dem ich die Manager von 1.3.3 auf 1.4 aktualisiert habe folgendes:

    PHP-Code:
    ErrorException {#60
      #message: "Warning: include(/Applications/mampstack-7.3/apache2/htdocs/mywebsite/vendor/composer/../composer/InstalledVersions.php): failed to open stream: No such file or directory"
      #code: 0
      #file: "./vendor/symfony/error-handler/DebugClassLoader.php"
      #line: 345
      #severity: E_WARNING
      
    trace: {
        ./
    vendor/symfony/error-handler/DebugClassLoader.php:345 }
        
    spl_autoload_call() {}
        ./
    vendor/composer/package-versions-deprecated/src/PackageVersions/Versions.php:10 }
        ./
    vendor/contao/core-bundle/src/Util/PackageUtil.php:24 }
        ./
    vendor/contao/core-bundle/src/Util/PackageUtil.php:61 }
        ./
    vendor/contao/manager-bundle/src/Console/ContaoApplication.php:29 }
        ./
    vendor/contao/manager-bundle/bin/contao-console:37 }
      }

    Ist eine lokale installation von Contao 4.9.9
    Was kann es sein?
    Hab den Prod und Dev Ordner gelöscht und erneut generieren lassen. Auch Autoloader hat nichts gebracht.

    Ich habe in der tl_page.php bei einer Erweiterung folgendes hinzugefügt gehabt:

    PHP-Code:
    if(VERSION == '4.9') {
        
    PaletteManipulator::create()
        ->
    addLegend('post_legend''dns_legend'PaletteManipulator::POSITION_APPEND)
        ->
    addField(array('addPostNote'), 'post_legend')
        ->
    applyToPalette('rootfallback','tl_page')
        ;

    Kann es auch daran liegen?

    War überhaupt eine Datei namens InstalledVersions.php in composer Verzeichnis und wurde es durch Manager-Update entfernt oder so?

  2. #2
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Daumen runter

    Ok. Jetzt bin ich nach stundenlangem Recherche schlauer geworden.

    Bei Conto Manager 1.4.0 wird composer v2 eingeführt. https://github.com/contao/contao-manager/tree/1.4.0

    Composer 2 hat die installedVersion.php im Einsatz. https://getcomposer.org/doc/07-runtime.md


    PS: Ich finde nicht korrekt, dass man den Contao Manager zwingend aktualisieren muss. Denn ohne den Manager zu aktualisieren kommt man nicht weiter.
    Dann hat man eventuell im Live-Betrieb eine Zerschossene und unbrauchbare Seite.

    Ob hierfür eine einfache Lösung gibt weiß ich nicht, aber wenn ich auf composer 2 aktualisere, stellt sich die Frage, wie viele von installierten Paketen nicht funktionieren wird!?

    Hatte schon jemand damit Erfahrung?

  3. #3
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    Dann hat man eventuell im Live-Betrieb eine Zerschossene und unbrauchbare Seite.
    Warum?

  4. #4
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Wenn ich Pakete habe, die eventuell nicht mit Composer v2 laufen.

    Wie man sieht, hab ich das Problem nach dem ich den Manager aktualisiert habe bekommen.
    Der neue Manager wurde auf Composer 2 aktualisiert. Composer v2 erwartet die Datei installedVersion.php, die wiederum nicht in vendor/composer/ vorkommt.

    Bei meine lokale Installation hat es die Seite zerschossen. Ich will nicht wissen, was passiert bei einer Live-Seite, wenn ich dort den Manager von 1.3.3 auf 1.4 aktualisiere.

    Ich habe jetzt Contao Manager weggelassen und dafür die composer v1 aus dem https://getcomposer.org/composer-1.phar verwendet.

    Ich nehme an, ich müsste ein Update ausführen, damit sich der composer auf Version 2 aktualisiert. Danach müsste ich alle Pakete die nicht unter v2 laufen fixen.

    Das in laufendem Betrieb wird schwierig.

  5. #5
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    Wenn ich Pakete habe, die eventuell nicht mit Composer v2 laufen.
    Wenn das der Fall ist, sagt dir das Composer bei einem composer update. Die Live-Seite wird dadurch nicht "zerschossen".


    Zitat Zitat von theMatrix Beitrag anzeigen
    Bei meine lokale Installation hat es die Seite zerschossen.
    Was genau hast du gemacht? Ein Update des Contao Managers ändert nichts an der Contao Installation selbst.

  6. #6
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Ich habe die Contao-Manager von 1.3.3 auf 1.4 aktualisiert.

    und über .
    HTML-Code:
    ..php73 -d memory_limit=-1 web/composer-manager composer dump-autoload --optimize
    durchgeführt

    Danach kam der Fehler

    PHP-Code:
    ErrorException {#60
      #message: "Warning: include(/Applications/mampstack-7.3/apache2/htdocs/mywebsite/vendor/composer/../composer/InstalledVersions.php): failed to open stream: No such file or directory"
      #code: 0
      #file: "./vendor/symfony/error-handler/DebugClassLoader.php"
      #line: 345
      #severity: E_WARNING
      
    trace: {
        ./
    vendor/symfony/error-handler/DebugClassLoader.php:345 }
        
    spl_autoload_call() {}
        ./
    vendor/composer/package-versions-deprecated/src/PackageVersions/Versions.php:10 }
        ./
    vendor/contao/core-bundle/src/Util/PackageUtil.php:24 }
        ./
    vendor/contao/core-bundle/src/Util/PackageUtil.php:61 }
        ./
    vendor/contao/manager-bundle/src/Console/ContaoApplication.php:29 }
        ./
    vendor/contao/manager-bundle/bin/contao-console:37 }
      }

    Ich bin dabei gewesen eine Erweiterung lokal zu fixen damit ich es auf Live-Seite übertragen kann.

    Kein Update oder install geführt oder sonst noch was gemacht.

    Davor hat ja alles funktioniert, bis ich den Contao-Manager über die Browserzeile aufgerufen hab. Wie immer der Hinweis "neu Contao-Manager 1.4.0 verfügbar" erschienen. Und ich habe auf aktualisieren geklickt.
    Danach ging nix mehr. Ich wollte Datenbank aktualisieren. Warum ich Contao-Manager aufgerufen hab, frag mich nicht. Vielleicht, damit das Problem passiert
    Ich hätte genauso contao/install aufrufen können, ich weiß es

    Jetzt in Terminal über
    HTML-Code:
    -d memory_limit=-1 /Applications/mampstack-7.3/apache2/htdocs/composer.phar dump-autoload --optimize
    funktioniert die Seite wieder.

    Also das Problem liegt definitiv an Contao-Manager

  7. #7
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    Ich habe die Contao-Manager von 1.3.3 auf 1.4 aktualisiert.

    und über .
    HTML-Code:
    ..php73 -d memory_limit=-1 web/composer-manager composer dump-autoload --optimize
    durchgeführt
    So ein Kommando gibt es nicht. Meinst du web/contao-manager.phar.php composer …? Wenn ja: warum hattest du das ausgeführt?

  8. #8
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Tipp Fehler. Arbeiten, Posten und Denken alles auf einmal wird schwierig

    Sollte auch
    HTML-Code:
    web/contao-manager.phar.php composer
    heißen.

    Weil ich eine Datei zu meiner Erweiterung hinzugefügt habe. Nach der Autoload habe ich auch
    HTML-Code:
    -d memory_limit=-1 vendor/bin/contao-console cache:clear --env=dev
    ausgeführt und
    HTML-Code:
    prod

  9. #9
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Ja, dann ist der Fall klar. Wie schon erwähnt führt das bloße Update des Contao Managers nicht dazu, dass deine Seite zerschossen wird. Der Contao Manager ändert nichts an der Contao Installation, durch das eigene Update.

    In deinem Fall musst du nach dem Contao Manager Update einfach noch ein Composer Update durchführen.

  10. #10
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Also nach Contao-Manager Update kein dump-autoload.

    Composer Update würde mir aber alle Pakete aktualisieren und alle Abhängigkeiten richtig?

    Dann könnte eventuell auch Konflikte geben.

  11. #11
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    Dann könnte eventuell auch Konflikte geben.
    Composer sagt dir diese Konflikte dann. Die Installation an sich wird dadurch dann nicht verändert.

    Und generell würde ich auch nicht empfehlen in einer Live-Umgebung direkt zu programmieren, wo es wichtig ist, dass diese nicht down sein soll.

  12. #12
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Deshalb mach ich es erst lokal. Aber, wenn ich das Paket dann auf Live-Seite übertrage und dort den Manager aktualisiere und Paket-Update durchführe, wird es die Seite eventuell oder sogar definitiv zerschießen.

    Bei einer Seite, wo ständig Inhalte geändert werden, ein Backup zu machen und es wieder zurück zu spielen wird schwierig, wenn DB davon betroffen ist.

    Egal wie man es macht ist es verkehrt.

  13. #13
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    Deshalb mach ich es erst lokal. Aber, wenn ich das Paket dann auf Live-Seite übertrage und dort den Manager aktualisiere und Paket-Update durchführe, wird es die Seite eventuell oder sogar definitiv zerschießen.
    Warum sollte das so sein?

  14. #14
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Weil nach der Update oder Install die autoload ausgeführt wird?

    Meinst du, wenn ich Contao-Manager aktualisiere, und /php/wasauchimmer/php -d web/contao-manager composer update durch führe dürfte keine Probleme im Frontend geben?

    Was ist mit Paketen die nicht mit composer v2 kompatibel sind und dafür keine Updates geben?

    Oder ich verstehe das ganze vorgehensweise nicht

  15. #15
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    Weil nach der Update oder Install die autoload ausgeführt wird?
    Nicht wenn die update oder install Operation nicht erfolgreich war. Dann bleibt alles unverändert.

    - - - Aktualisiert - - -

    Zitat Zitat von theMatrix Beitrag anzeigen
    Was ist mit Paketen die nicht mit composer v2 kompatibel sind und dafür keine Updates geben?
    Dann meldet dir das Composer und die Installation bleibt unberührt.

  16. #16
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Das bedeutet aber auch, dass ich die Änderungen nicht einsetzen kann.

    Mein Paket wird dann auch ignoriert, richtig?

  17. #17
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    Das bedeutet aber auch, dass ich die Änderungen nicht einsetzen kann.
    Genau, du müsstest also zuerst die anderen Probleme lösen.

  18. #18
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Um es genauer zu verstehen! Was war in meinem Fall jetzt das Problem?

    Ich habe
    1. mein Paket lokal geändert. Hat alles funktioniert.
    2. Danach, warum auch immer den Contao-Manager aktualisiert.
    3. Dann dump-autoload angestoßen
    4. Dann clear-cache


    Was hat die Installation dazu gebracht, dass es nicht mehr funktioniert.

  19. #19
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.292
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    [*]Dann dump-autoload angestoßen
    Das dürfte genau das Problem sein, da du vorher kein update aller Pakete gemacht hast!

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

  20. #20
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Der reguläre Weg um Änderungen zu deployen wäre folgender:

    • Änderungen lokal durchführen und testen.
    • Änderungen auf den Server kopieren.
    • composer install -o --prefer-dist --no-dev aufrufen.

  21. #21
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    composer install -o --prefer-dist --no-dev Prefer-dist ist dann mein Paket aus dem Git-Repository nehme ich an. Und no-dev um den prod anzustoßen?

    Das klingt alles so kompliziert

    Gibt es eine sinnvolle Seite, wo man sich über den Vorgehens und Commands schlau machen kann?

  22. #22
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Das war nur stellvertretend für das, was im Contao Manager ausgeführt wird, wenn du dort den Composer Installer ausführst. Du musst dich nicht unbedingt selbst damit beschäftigen

    Ansonsten: die Dokumentaiton von Composer ist hier https://getcomposer.org/doc/

  23. #23
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Ja, klar.
    Aber was mir letztens passiert ist, wenn ich in Contao-Manager bei einem Paket auf aktualisieren klicke und es anstoße, aktualisiert es alle Pakete.
    Zum Glück hab ich erst den Testlauf angestoßen gehabt.
    Ich weiß nicht aber bei dem ganze composer Geschichten habe ich immer Bauchweh.

  24. #24
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    Aber was mir letztens passiert ist, wenn ich in Contao-Manager bei einem Paket auf aktualisieren klicke und es anstoße, aktualisiert es alle Pakete.
    Das ist ja auch etwas anderes. "Composer Install durchführen" findest du in der Systemwartung.

  25. #25
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Wofür ist dann die Aktualisieren Button in Paketverwaltung, was führt der für ein Befehl aus?
    Ich dachte, dadurch aktualisiere ich immer einen einzigen – und zwar genau den selektierten – Paket.

  26. #26
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    Wofür ist dann die Aktualisieren Button in Paketverwaltung, was führt der für ein Befehl aus?
    Der aktualisiert einzelne (oder alle) Pakete.


    Zitat Zitat von theMatrix Beitrag anzeigen
    Ich dachte, dadurch aktualisiere ich immer einen einzigen – und zwar genau den selektierten – Paket.
    Genau, ja.

  27. #27
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Ne, eben nicht. Bei meinem Testlauf hat das Ding mehr Pakete aktualisiert als benötigt.

    Ich werde hier gerne ein Screenshot hinzufügen, aber habe momentan bedenken wegen Contao-Manager Update.

    Das mache ich aber sobald ich meine Pakete für Composer v2 aktualisiert habe.

    Kann ich eigentlich den Contao-Manager Update umgehen?

  28. #28
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.803
    Partner-ID
    10107

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen
    Ne, eben nicht. Bei meinem Testlauf hat das Ding mehr Pakete aktualisiert als benötigt.
    Was genau hast du gemacht?

  29. #29
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.706
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von theMatrix Beitrag anzeigen

    Kann ich eigentlich den Contao-Manager Update umgehen?
    Soweit ich weiß nein.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  30. #30
    Contao-Nutzer Avatar von theMatrix
    Registriert seit
    19.09.2013.
    Ort
    Frankfurt
    Beiträge
    154

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Was genau hast du gemacht?
    Ich habe bei einer Contao 4.4 installation habe ich 2 Pakete ausgewählt und dann auf Testlauf geklickt.
    Beide Pakete die ich aktualisieren wollte, waren Pakete von mir. Keine irgendwelche Abhängigkeiten dabei.

    Dann lief eine weile und stand in der Konsolenausgabe nur noch (Sinngemäß)
    Updating... paket x
    Removing... paket...v.x
    Updating... paket ..... v.x
    Updating... paket ..... v.x
    Updating... paket ..... v.x
    Updating... paket ..... v.x
    Updating... paket ..... v.x
    Installing... paket ...v.x.x
    ....
    Geändert von theMatrix (12.02.2021 um 13:57 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •