Deleting a Managed Package
Often a Managed Package (MP) gets installed in an org for testing or trialing, but then it is never uninstalled. And MP is installed directly into Production. If the MP is not used, the longer it stays in the org, the more chance that some of that metadata gets used in error, and the more difficult it is to remove it. In the worst case, we’ve heard an Admin accidentally did Trailhead in Production and the “Dreamhouse” app was installed into Production. And then the objects were used in part of another app.
It took me less than six hours to uninstall, remove all the dependencies, and really dig through 18 different packages that we had.
Checklist
Here is a list of items in increasing level of work. The more detailed impact analysis needs a metadata dictionary with dependency analysis, like Elements.cloud. Without this information, deleting the MP adds risk. Only you can assess that.
So, here is the checklist to remove a MP:
- Try and find out who installed it and why.
- Look at the core objects and see if they have more than 10 records. e.g. Project object for a project management app. Core: because there may be other objects that store config data and my be pre-populated 10 records not 0: most MP are “tested” by adding a few records. #cheatcode Elements metadata dictionary: MP at the bottom, select MP, open up Custom objects, select core object, right panel 3rd icon down # records
- Can Salesforce delete it? Try this in a sandbox. If it can be deleted, then the MP won’t (technically) break the org – e.g. Flow. But there may be other dependencies that aren’t checked which could impact the org, so you need to do more digging.
- Are there any descriptions/documentation against metadata items? #cheatcode Ask Elements Copilot (AI). The prompt is “Check for metadata items with namespace prefix__ that have a description or help text and provide list of metadata as a CSV file”
- Check dependencies outside of the MP i.e. check every MP metadata item and see if it has been used in metadata that is not in the MP – e.g Apex, Flow, Report, Page Layout, Email Template etc etc etc. #cheatcode Ask Elements Copilot (AI). The prompt is “Can you list the dependencies on any metadata that has namespace prefix__ in the API name and the dependency that you find does not have namespace prefix__ in the API name and provide it as a CSV file.” Take the CSV file and sort by API_name.
- Check for namespace prefix__ hard coded into other metadata items. #cheatcode Ask Elements Copilot (AI). The prompt is “Check for namespace prefix__ hard coded into Apex Classes, Apex Triggers, Flows and provide list of metadata as a CSV file”
- Check for any namespace prefix__ fields being used or populated by external systems.
ElementsGPT org copilot using the prompt
Final word
Deleting a Managed Package doesn’t have to be a scary, high-effort job that gets put off and put off. Using a simple checklist, and a metadata dictionary powered by AI, it is possible to remove Managed Packages quickly and painlessly.
Connect with the Elements team today, to discover the breadth of capabilities that our Change Intelligence Platform has to offer.
Sign up for
our newsletter
Subscribe to our newsletter to stay up-to-date with cutting-edge industry insights and timely product updates.