- Betroffene App
- WoltLab Suite Core
Nach meinen Feststellungen ist es dem WSC nicht möglich, während eines Updates ein schon vorhandenes Paket (welches gerade installiert wurde) erneut zu erkennen.
Folgendes wurde durchgeführt:
Vor dem Update der Version WCF 2.1.16 und WBB 4.1.15 habe ich zwei Pakete, die noch nicht das gleiche Paket als Abhängigkeit nutzen.
Nach dem Update auf die WSC Version 3.0.6 (und WBB 5.0.6) wurde zuerst Paket 1 (VieCode Shop) auf die neue Version ohne Probleme geupdatet. Dabei wurde auch ein requirement Packet (de.softcreatr.wsc.fontAwesomeUtils) mit installiert.
Als das Update soweit durch war vom VieCode-Shop wurde nun der Bugtracker geupdatet.
Dieser hat auch das gleiche Paket als requirement. Nun kommt beim Update folgende Fehlermeldung:
- Aufgerufene URL
- /acp/index.php?install-package/&&
- Referrer
- http://www.mdman.de/acp/index.php?package-update/&
- WoltLab Suite
- 3.0.6
- PHP
- 5.5.38
- Fehlermeldung
- A package can't overwrite files from other packages. Only an update from the package which owns the file can do that. (Package 'de.softcreatr.wsc.fontAwesomeUtils' tries to overwrite file 'js/SoftCreatR/FontAwesome.js', which is owned by package 'de.softcreatr.wsc.fontAwesomeUtils')
- Art
- wcf\system\exception\SystemException
- Datei (Zeile)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/system/package/FilesFileHandler.class.php (43)
- Stacktrace
-
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/system/setup/Installer.class.php (183): wcf\system\package\FilesFileHandler->checkFiles(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/system/setup/Installer.class.php (144): wcf\system\setup\Installer->checkFiles(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/system/setup/Installer.class.php (54): wcf\system\setup\Installer->install(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/system/package/PackageInstallationDispatcher.class.php (690): wcf\system\setup\Installer->__construct(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/system/package/plugin/FilePackageInstallationPlugin.class.php (50): wcf\system\package\PackageInstallationDispatcher->extractFiles(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/system/package/PackageInstallationDispatcher.class.php (603): wcf\system\package\plugin\FilePackageInstallationPlugin->install(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/system/package/PackageInstallationDispatcher.class.php (141): wcf\system\package\PackageInstallationDispatcher->executePIP(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/acp/action/InstallPackageAction.class.php (72): wcf\system\package\PackageInstallationDispatcher->install(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/action/AbstractDialogAction.class.php (68): wcf\acp\action\InstallPackageAction->stepInstall(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/action/AbstractAction.class.php (47): wcf\action\AbstractDialogAction->execute(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/system/request/Request.class.php (83): wcf\action\AbstractAction->__run(…)
- /var/www/vhosts/mdman.de/httpdocs/wcf/lib/system/request/RequestHandler.class.php (94): wcf\system\request\Request->execute(…)
- /var/www/vhosts/mdman.de/httpdocs/acp/index.php (9): wcf\system\request\RequestHandler->handle(…)
Das WSC versucht hier das gleiche Paket noch mal zu installieren. Das kann so nicht richtig sein. Es sollte eigentlich vor dem Install erst erneut schauen, ob die Abhängigkeiten schon gelöst wurden. Anscheinend schaut das WSC nur ganz am Anfang des Update-Prozesses in die Abhängigkeiten und versucht dann unter Umständen öfters das gleiche Paket mehrmals zu installieren.
Hier sollte man die Update-Routine anpassen und vor jeder Install eines Paketes die Abhängigkeiten erneut überprüfen.
Hier auch mal ein Video des Update-Versuches:
Im Anhang ein Bild von der Paketliste vor dem Update-Versuch.