It was time to take inventory of third party extensions and remove those that were not needed on a test site. Found only a couple of extensions and the Akeeba Release System (ARS) was one of them. This was going to be easy! Clicked the Uninstall button, only to see a nasty PHP fatal error displayed on a blank page about a missing file in a library. The site was rendered unusable. How come?
A closer look at the error identified that the Admin Tools extension was trying to load the fof30 library. Interesting, one extension by Akeeba disabled the other! The manifest file of ARS revealed that the uninstallation of the package is done by the script /administrator/manifests/packages/ars/script.ars.php.
The uninstall() function has two lines of comments about the uninstallation of the FOF library possibly failing if other extensions are dependent on it. Instead, the relatively old version of the uninstallation script of the unsupported extension missed the existence of the latest version of Admin Tools completely and zapped the library.
Solution: comment out the following line from the uninstall() function before starting to uninstall.
// $this->uninstallFOF($parent);
The moral of this true story:
- run the uninstall script once on a test site before installing a new extension on a live site
- avoid unsupported extensions unless you are prepared to troubleshoot