1

We have a package listed on AppExchange that I am looking to upgrade. I deleted an unused Visualforce page from our package and created a "Managed - Released" package from this. We deleted this page because it is unused and uses an older SOAP API version. Will the Visualforce page be deleted from customer orgs if we push upgrade them? I was not able to find a clear answer to this online. When I tested this out it did delete the page, but this link seems to indicate it wouldn't delete the page.

7
  • I'm guessing, from the terminology used, you are talking about a 1GP managed package...?
    – Phil W
    Nov 8, 2021 at 20:04
  • (Actually, since you succeeded, it must be 1GP since 2GP with ancestor doesn't support component removal yet, IIRC...)
    – Phil W
    Nov 8, 2021 at 20:24
  • I think it all comes down to the relationships between various components. IIRC we found we had to first clean out the Visualforce page content (so it was an empty page), removing reference to the controller in one release then delete the controller and the page in the next release. But that's a different issue compared to what you ask. However, because we always did it in two steps I think the VF pages were successfully deleted after an install (manual, we don't use push). Anyway, perhaps someone will have an actual answer for you.
    – Phil W
    Nov 8, 2021 at 20:29
  • The FAQ you linked explains what happens. If there's a dependency, the package upgrade will be blocked, and without a dependency, it will be deleted as normal. There is a two-step process that needs to happen if you have any subscribers that have made those dependencies.
    – sfdcfox
    Nov 8, 2021 at 20:42
  • @sfdcfox how can there be a dependency if the Visualforce page is uneditable by the customers who install the managed package? Is that possible?
    – VMS
    Nov 8, 2021 at 20:44

1 Answer 1

0

Previously released VF pages aren't automatically deleted from subscriber orgs. After a VF page has been deleted by the developer and the new version of the packaged pushed (or installed by the subscriber admin) the admin in the org can delete the page from their org.

A couple of helpful links and the notes that are relevant here:

ISVForce Guide: Delete Components from First-Generation Managed Packages

Data and metadata are never deleted in a subscriber org without specific action by the customer. When a subscriber upgrades to the new package version, the deleted components are still available in the subscriber’s org. The components are displayed in the Unused Components section of the Package Details page.

This page also describes the 2-step process to remove dependencies between VF pages and components and apex and ensure future upgrades don't have problems.

https://developer.salesforce.com/docs/atlas.en-us.packagingGuide.meta/packagingGuide/packaging_packageable_components.htm

ISVForce Guide: Components Available in Managed Packages

Component: Visualforce Page *2

2 If you remove this component type from a new version of your package, the administrator of the subscriber org can delete the component when a subscriber upgrades.

https://developer.salesforce.com/docs/atlas.en-us.packagingGuide.meta/packagingGuide/packaging_packageable_components.htm

1
  • I deleted this page because it was unused, and because it used a deprecated API version (it used version 20 which is now deprecated. I didn't update the API version before deleting it. I got an email saying we needed to take action for this page, and I wanted to handle this for customers. Does this mean customers will get emails saying the API version for this page is deprecated? But now in my developer org since I deleted the page, it looks like I can't resurrect it.Should I have edited the version before deleting it?
    – VMS
    Nov 9, 2021 at 16:18

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.