Skip to content

PLIP: Get rid of portal_quickinstaller #1340

Closed
@mauritsvanrees

Description

Proposer : Maurits van Rees

Seconder : @hvelarde

Abstract

No longer support installing via Extensions/install.py.

Motivation

There are two ways of installing products: GenericSetup and CMFQuickInstaller. Checking if a package is currently installed, means having to check portal_setup and portal_quickinstaller, or having code that makes sure those two are in sync. The syncing is mostly in place, with some recent changes, but supporting both remains tricky. Cleanup would make this code much easier to understand.

Assumptions

Some core packages need to actually get a GenericSetup profile instead of their current install.py (for example Products.Marshall). Some need to get an uninstall profile.

Proposal & Implementation

  • Update prefs_install_products_form browser view to only handle GenericSetup profiles.
  • Register this view also as @@installer for easier remembering.
  • Possibly create a utility instead that handles the basic operations.
  • When installing a product, use its default profile, instead of using the first profile found.
  • Warn before install when a product has no uninstall profile.
  • Change any core code that uses the portal_quickinstaller (mostly plone.app.upgrade and tests).
  • CMFQuickInstaller code should remain in Plone 5.x, but possibly stripped down and with deprecation warnings. Remove it in Plone 6. (plone.app.upgrade can get bare bones module patches to avoid possible breakage.)
  • Document what third party add-ons should do.

Deliverables

  • CMFPlone branch
  • plone.app.upgrade branch
  • CMFQuickInstaller branch
  • Branches for core packages that have no default or no uninstall profile yet.
  • Documentation

Risks

  • Third party add-ons that have no profile, are no longer installable.
  • We lose the automatic partial cleanup that CMFQuickInstaller does on uninstall (remove added skins, css, etc). The 'partial' part of this may be a benefit: a proper uninstall profile is now required instead of add-ons relying on the default cleanup being good enough.

Participants

Maurits van Rees

Note that CMFQuickInstaller is Plone specific, in spite of the CMF in the name. So compatibility with CMF is not an issue.

See http://sourceforge.net/p/plone/mailman/message/34390699/ for small initial discussion in August 2015.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions