Disabling vs Uninstalling Module Loader Packages
Overview
Sugar's Module Loader allows organizations to upload and install custom packages to their Sugar instances. If a package is no longer needed, administrators have the option of either disabling or uninstalling it. Before performing these actions, it is helpful to understand the difference between these two options and how they affect the installed package. For more information regarding Module Loader in Sugar, please refer to the Module Loader documentation.
Disabling Packages
SugarCRM recommends uninstalling packages rather than disabling them in order to ensure all changes introduced by the package are removed. If the installed package is known to only add new files without affecting existing Sugar files, the Disable option can be used to temporarily disable its functionality. This option should only be used if you are sure that the package did not affect any existing files. Otherwise, disabling can leave package artifacts in place which will cause unexpected behavior.
Packages that are installed but in a disabled state will continue to appear in the Installed Packages panel in Admin > Module Loader. If you wish to enable the package again at a later time simply click its Enable button.
Note: Always perform a Quick Repair and Rebuild after disabling and then re-enabling a package via Module Loader.
Uninstalling Packages
In order to ensure an unwanted package does not leave behind any problematic artifacts, SugarCRM recommends uninstalling rather than disabling the package. Simply click the Uninstall button to the right of the package name in the Installed Packages panel. Please note that packages have to be defined as "Uninstallable" in the manifest.php
file of the package in order to be uninstalled from Sugar. For more information on uninstalling packages in Sugar, please refer to the Module Loader documentation. Once you commit the uninstall, the tables and existing data generated by the package will be removed from the Sugar file system and database.
Uninstalled packages will appear in the Uploaded Packages panel, and you can completely remove the package from your Sugar instance by clicking the Delete Package button. When a package gets deleted from Module Loader, its files are completely removed from the ./upgrades/module
directory in Sugar's filesystem. If you wish to re-install the package in Sugar at a later time, simply upload and install the package again via Module Loader.
Note: For some older, unsupported versions of Sugar, the directory from which files are removed is ./upload/upgrades/module
.
When uninstalling packages, you will have the option to retain the database tables for custom modules in Sugar's database. This option should be used when, for example, uninstalling a previous version of the package as a step in upgrading the package. But by default, "Remove Tables" is selected when uninstalling modules via Module Loader.
Additional Information
Once a package has been uninstalled and deleted, there should be no traces of it remaining in Sugar. However, when troubleshooting a package-related issue, keep in mind that packages can sometimes be faulty and fail to completely disable or uninstall. For information on how to manually remove modules, please refer to the Manually Removing Module Loader Packages article.