Missing extensions are not handled gracefully
Created by: universalhandle
If you delete an installed extension from the filesystem without first uninstalling it, the system should report it as "missing." If you already have the extensions UI pulled up when you do this, and then click the refresh button, the UI does this in more or less the same way as the core UI. I think there is room for improvement here:
- Missing extensions should be styled so as to be more obvious. (The core UI does a decent job of this.)
- If we are trying to make this UI more user-friendly than core's perhaps we should explain how this might have happened or some possible next steps.
- Unlike the core UI, this one doesn't offer a mechanism by which to disable/uninstall missing extensions.
If you have an extension in a missing state and you don't already have the UI pulled up, you can't do it. Instead you get:
Error Error messageCRM_Extension_Exception_MissingException: Unknown extension: nz.co.fuzion.relatedpermissions in CRM_Extension_Container_Collection->getContainer() (line 150 of /usr/local/lib/civicrm-buildkit/build/d47/sites/all/modules/civicrm/CRM/Extension/Container/Collection.php). The website encountered an unexpected error. Please try again later.