eS-IT / cookiehandlebar

Cookiebar für das Open Source CMS Contao
0 stars 0 forks source link

Kein Datenbankupdate ab der Version 1.0.6 #3

Closed chiron501 closed 4 years ago

chiron501 commented 4 years ago

Hallo, wenn ich Ihr Modul über den Contao-Manager installiere wird im Installer kein Datenbankupdate durchgeführt bzw. angeboten und das Modul CookieHandleBar lässt sich im Backend nicht anlegen, da nicht vorhanden. Erst wenn ich explizit die Version 1.0.5 über den Manager installieren wird das Datenbankupdate durchgeführt und Ihr Modul lässt sich wie gewohnt einrichten.

System:

eS-IT commented 4 years ago

Ich kann das Verhalten reproduzieren. Leider sind die Änderungen zwischen 1.0.5 und 1.0.7 marginal und sollten eigentlich nichts an der Installation ändern. Ich habe zur Zeit keine Erklärung.

chiron501 commented 4 years ago

Hallo Herr Froch, sind Sie in der Sache schon weitergekommen?

Ich hatte letztens eine Contao-Installation wo ich Ihr Modul von 1.0.5 -> 1.0.8 updaten wollte. Leider habe ich folgende Fehlermeldung erhalten:

Package operations: 5 installs, 2 updates, 1 removal
  - Removing contao-community-alliance/composer-plugin (3.0.9)
  - Installing pimple/pimple (v1.1.1): Downloading (100%)
  - Installing contao-community-alliance/dependency-container (2.0.3): Downloading (100%)
  - Installing contao-community-alliance/event-dispatcher (2.0.5): Downloading (100%)
  - Installing contao-community-alliance/events-contao-bindings (4.4.5): Downloading (100%)
  - Installing contao-community-alliance/translator (2.1.4): Downloading (100%)
  - Removing menatwork/contao-multicolumnwizard (3.3.16)
  - Installing menatwork/contao-multicolumnwizard-bundle (3.4.3): Downloading (100%)
  - Updating esit/cookiehandlebar (1.0.5 => 1.0.8): Downloading (100%)
PHP Fatal error:  Uncaught Error: Class 'ContaoCommunityAlliance\Composer\Plugin\UserFilesLocator' not found in /www/htdocs/xxxxx/xxx.de/vendor/contao-community-alliance/composer-plugin/src/Installer/AbstractModuleInstaller.php:219
Stack trace:
#0 /www/htdocs/xxxxx/xxx.de/vendor/contao-community-alliance/composer-plugin/src/Installer/AbstractModuleInstaller.php(145): ContaoCommunityAlliance\Composer\Plugin\Installer\AbstractModuleInstaller->getFilesRoot()
#1 phar:///www/htdocs/xxxxx/xxx.de/web/contao-manager.phar.php/vendor/composer/composer/src/Composer/Installer/InstallationManager.php(193): ContaoCommunityAlliance\Composer\Plugin\Installer\AbstractModuleInstaller->update(Object(Composer\Repository\InstalledFilesystemRepository), Object(Composer\Package\CompletePackage), Object(Composer\Package\CompletePackage))
#2 phar:///www/htdocs/xxxxx/xxx.de/web/contao-manager.phar.php/vendor/composer/composer/src/Composer/Installer/InstallationManager.php(160): Com in /www/htdocs/w017b4af/contao44.server501.de/vendor/contao-community-alliance/composer-plugin/src/Installer/AbstractModuleInstaller.php on line 219

# Process terminated with exit code 255
# Result: Unknown error

Ich habe dann explizit das Paket contao-community-alliance/composer-plugin installiert bzw. in die composer.json eingetragen, damit es beim Update nicht entfernt wird. Das Update hat daraufhin funktioniert.

Danach habe ich folgenden Test durchgeführt:

  1. Die aktuelle Contao LTS (4.4) installiert
  2. Explizit Paket contao-community-alliance/composer-plugin in die composer.json eingetragen und installiert.
  3. Dann über den Contao-Manager direkt Ihr Paket in der neuesten Version (1.0.8) installiert.
  4. Daraufhin konnte ich erfolgreich das Datenbank-Update ausführen und die notwendigen Tabellen/Felder wurden angelegt.

Lässt man Schritt 2 weg, wird kein Datenbank-Update im Installer angeboten.

Evtl. hilft Ihnen diese Erkenntnis weiter den Bug zu beheben.

eS-IT commented 4 years ago

Vielen Dank für den Hinweis. Auch bei mir bricht die Installation mit einem unbekannten Fehler ab. Allerdings ist dies bei mir schon vor dem Laden der Pakete. Leider kann ich mir auch nicht erklären warum das Paket contao-community-alliance/composer-plugin deinstalliert wird, da es in der Erweiterung explizit als Abhängigkeit enthalten ist (s. hier).

Im Augenblick weiß ich leider keine Lösung und da die Fortführung des Projekts durch den Kunden ungewiss ist, kann ich auch nicht versprechen, dass sich dies noch ändert.

chiron501 commented 4 years ago

Nun gut, dass das Paket contao-community-alliance/composer-plugin deinstalliert wird ist eigentlich relativ eindeutig. Beim menatwork/contao-multicolumnwizard ist das Paket required bei menatwork/contao-multicolumnwizard-bundle nicht. Oder meinen Sie, dass nachdem Sie das Paket in Ihrer composer.json als required eingefügt haben es zum Abbruch der Installation kommt?

Bei mir läuft jetzt sowohl das Update als auch die Neuinstallation problemlos durch, nachdem Sie Ihre composer.json geändert haben.

Danke!