One of the steps when installing a namespaced managed package is shown below. What will the Automatically attempt to rename conflicting components in installing package option do when there's a conflict? It sounds as if components within the managed package that is being installed will be renamed.

I always thought that a managed package was a self-contained application that cannot be modified. Is there any documentation on how this renaming is done? Or how a conflict could occur when the managed package has a namespace?

Package Conflict Options

  • Can we triple check it's a Namespaced Managed Package vs an Unmanaged Package? – bigassforce Feb 13 '14 at 17:01
  • Its a namespaced managed package. Ive updated the question – BarCotter Feb 13 '14 at 17:05
  • Even un/managed Page Layouts can coexist with the same name. Can you "Block installation and list conflicts" and click "Next" to show us the Component Types affected? – bigassforce Feb 13 '14 at 20:59
  • I have always used "Block installation and list conflicts" and its never had any conflicts – BarCotter Feb 14 '14 at 9:46

The only documentation i have found, which is under unmanaged, is in the excellent ISV Force Guide. Which provides the following summary and a table. I've also included below information on managed packages for reference. I'd say if your definitely seeing this for a managed package and according my interpretation of the authoritative ISV packaging guide, it's a bug and something you should raise with Salesforce support.

Components Available in Unmanaged Packages

(extract from ISV Force Guide)

Automatic Renaming Salesforce can resolve naming conflicts automatically on install.

  • No: If a naming conflict occurs the install is blocked.

  • Yes: If a naming conflict occurs Salesforce can optionally change the name of the component being installed.

enter image description here

(see documentation for the full table)

Special Behavior of Components in Packages

(extract from ISV Force Guide)

Component names must be unique within an organization. To ensure that your component names do not conflict with those in an installer’s organization, use a managed package so that all of your component names contain you namespace prefix.


Tip: To prevent naming conflicts, Salesforce recommends using managed packages for all packages that contain Apex. This way, all of the Apex objects contain your namespace prefix. For example, if there is an Apex class called MyHelloWorld and the namespace for your organization is OneTruCode, the class is referenced as OneTruCode.MyHelloWorld

| improve this answer | |

Besides the link Andrew Fawcett posted, there is this documentation page: https://developer.salesforce.com/docs/atlas.en-us.196.0.packagingGuide.meta/packagingGuide/packaging_unmanaged_components.htm

| improve this answer | |
  • Please include a summary of the linked document in case the link breaks. See How to Answer for best practices. – Dave Humm Oct 19 '18 at 10:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.