-
-
Notifications
You must be signed in to change notification settings - Fork 194
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PLIP: Add option to disable parts of Classic UI #3923
Comments
Only load them when plone.app.portlets is available and Classic UI is wanted. This is the default in Plone 6, but may be switched off in 6.1. In Plone 7 this won't be the default. See plone/Products.CMFPlone#3923
Branch: refs/heads/master Date: 2024-03-06T21:34:27+01:00 Author: Maurits van Rees (mauritsvanrees) <[email protected]> Commit: plone/plone.app.event@a44933c Conditionally load the zcml for our portlets. Only load them when plone.app.portlets is available and Classic UI is wanted. This is the default in Plone 6, but may be switched off in 6.1. In Plone 7 this won't be the default. See plone/Products.CMFPlone#3923 Files changed: A news/3923.bugfix M plone/app/event/configure.zcml Repository: plone.app.event Branch: refs/heads/master Date: 2024-05-07T14:14:24+02:00 Author: Maurits van Rees (mauritsvanrees) <[email protected]> Commit: plone/plone.app.event@e248da7 Merge pull request #389 from plone/maurits-conditional-portlets Conditionally load the zcml for our portlets. Files changed: A news/3923.bugfix M plone/app/event/configure.zcml
Branch: refs/heads/master Date: 2024-03-06T21:34:27+01:00 Author: Maurits van Rees (mauritsvanrees) <[email protected]> Commit: plone/plone.app.event@a44933c Conditionally load the zcml for our portlets. Only load them when plone.app.portlets is available and Classic UI is wanted. This is the default in Plone 6, but may be switched off in 6.1. In Plone 7 this won't be the default. See plone/Products.CMFPlone#3923 Files changed: A news/3923.bugfix M plone/app/event/configure.zcml Repository: plone.app.event Branch: refs/heads/master Date: 2024-05-07T14:14:24+02:00 Author: Maurits van Rees (mauritsvanrees) <[email protected]> Commit: plone/plone.app.event@e248da7 Merge pull request #389 from plone/maurits-conditional-portlets Conditionally load the zcml for our portlets. Files changed: A news/3923.bugfix M plone/app/event/configure.zcml
I approved this PLIP. cc @plone/framework-team @plone/release-team |
I think nowadays we can have an instance with classicui for distribution that needs it (see @mauritsvanrees example about creating a Release in plone.org) instead of enabling/disabling classicui with a variable in the same instance. This means to have ZEO installed, which I think happens everywhere. Less work because every distribution will use whatever it needs for every instance in a standard way. Also, mixing distributions and features (is Keeping the Classic Ui with the most advanced configs will help also other distribution. I don't see people creating the same feature of Classic UI in Volto, React, Vue, web apps, just because they need a subsetting because this will open to slowing development, doing development in something not related to the interface and the project, errors and security problem. Fire up a Classic UI instance, do your settings/object create/edit and all are happy. About the variable name, what if:
became:
|
PLIP (Plone Improvement Proposal)
Responsible Persons
Proposer: Maurits van Rees
Seconder:
Abstract
In Plone 6.1+, you can disable loading parts of the Classic UI code by setting an environment variable.
Motivation
In Plone 7, Classic will be optional: by default with CMFPlone you get a very bare Plone Site, and you should either add
plone.volto
orplone.classicui
.Meanwhile, in Plone 6.1+, it would be good to start preparing for this, and see which parts we can safely let away.
Assumptions
plone.classicui
package where some code or dependencies could be moved, but CMFPlone 6.1+ would pull this package in.plone.volto
in Plone 6 must not do this though.Products.CMFPlone
, but byplone.classicui
, which would then become a dependency ofPlone
.Proposal & Implementation
Proof of concept: #3922
DISABLE_CLASSIC_UI=true
.CMFPlone
inmeta.zcml
we will check for this variable, and then register a zcml featuredisable-classic-ui
.<configure zcml:condition="not-have disable-classic-ui">
plonetheme.barceloneta
plone.staticresources
Alternative:
disable-classic-ui
. Setting an environment variable will be easier for most.plone.app.portlets
. The last could be needed, because add-ons may load the zcml ofplone.app.portlets
anyway. For exampleplone.app.event
does this, which I want to fix here. [Update: done.]Deliverables
Products.CMFPlone
branch to define the zcml feature based on an environment variable.plone/app/layout/viewlets/configure.zcml
. But then the viewlet managers won't be defined either, so this may cause errors in the main template. We will need to see.Moving more portlet code together would be helpful, but that can be done in a separate PR.
Risks
Participants
The text was updated successfully, but these errors were encountered: