View Issue Details

IDProjectCategoryView StatusLast Update
0007309OXID eShop (all versions)7. --- Other tools --------------public2022-06-22 16:46
Reporterd3 
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Product Version 
Target VersionFixed in VersionNext Minor Version 
Summary0007309: Aborted Composer uninstallation with autoloaded packages
DescriptionWe use 3rd party packages in our OXID modules that set autoload entries in Composer.

Example: https://packagist.org/packages/firephp/firephp-core#v0.5.3 with the autoload file "lib/FirePHPCore/fb.php".

When uninstalling the OXID module, the Composer process terminates with the following message:

require(.../vendor/composer/../firephp/firephp-core/lib/FirePHPCore/fb.php): failed to open stream: No such file or directory

The uninstallation cannot be completed.

Other package constellations are also affected by this with appropriate error messages.

Translated with www.DeepL.com/Translator (free version)
Steps To ReproduceOur test environment:

Apache, PHP 7.4, OXID EE 6.4.1 (but probably reproducible in older versions as well), oxid-esales/oxideshop-composer-plugin v5.2.0.

Reproduction:

composer require d3/extsearch && composer remove d3/extsearch
Additional InformationIn order to be able to resolve the OXID namespaces, the Composer Plugin loads the Composer Autoloader for certain package types. However, due to the ongoing uninstallation process, this autoloader receives outdated data. If the autoloader is called for every package, this behaviour does not happen.
TagsComposer
ThemeNot defined
BrowserNot defined
PHP Version7.4
Database VersionAll

Activities

d3

2022-03-08 09:17

reporter  

Screenshot-2022-03-08-091134_2.jpg (366,585 bytes)

QA

2022-03-08 17:31

administrator   ~0013790

Hello,

our test systems do not run any additionally required software like the IonCube loader. Therefore I'm unable to install the mentioned module. I installed the d3/oxid-sql-logger, which is the package using the mentioned firephp/firephp-core package. While uninstalling it again, I did not encounter any issues. Then I created a test module, required the firephp package and still did not run into problems. May you be able to provide any test module that is not encrypted?

Nevertheless the reported issues sounds similar to the issue#7123:
https://bugs.oxid-esales.com/view.php?id=7123

Can you confirm this? Also your additional information is pointing to the behavior of the OXID Composer Plugin, are you able to provide any specific method that behaves wrong in your opinion?

- sp -

anton.fedurtsya

2022-06-22 16:45

administrator   ~0013831

Hello,

The fix provided in the pull request (https://github.com/OXID-eSales/oxideshop_composer_plugin/pull/27) looks valid for some of the cases. Even if it's very hard to reproduce this concrete situation described in this bug, Looks like, mentioned bug 0007123 is fixed but the PR as well.

Thanks.