Follow-up Issue
This is a potential follow-up issue to #1903346: Establish a new DefaultPluginManager to encapsulate best practices, which changes the behavior of plugin managers to use a base plugin manager class. The patch in that issue only addresses 5 plugin managers - ArchiverManager, ConditionManager, BlockManager, ConstraintManager, ImageToolkitManager. The rest of the plugin manager classes need to follow the new behavior.
Proposed resolution
This may be done in this issue or this issue may be a meta issue to document individual plugin manager classes listed below:
Remaining tasks
- Write patch(es)
API changes
API changes per #1903346: Establish a new DefaultPluginManager to encapsulate best practices.
Related Issues
Berdir asked to create this follow-up issue.
Comments
Comment #1
BerdirSlightly changing title, we still use discovery and discovery decorators but we no longer use decorators for alter hooks/caching/processing.
Comment #2
neclimdulI was about to have a very serious discussion with people :-D
Comment #3
linclark CreditAttribution: linclark commentedFYI, neither RdfMappingManager nor SiteSchemaManager was a plugin manager. They are also being removed.
Comment #4
BerdirYes, not all of those are plugin managers.
The other issue went in, so work on this one can start.
Have a look at the changes in the other issue to e.g. ArchiveManager and Conditionmanager, it should be quite easy to apply that pattern to the others here. Define the arguments in the corresponding services file, update the constructor and change the class that is being extended from.
You probably want to update only a few at the time and run the tests, make sure to update the list and mark non-plugin managers as such and check those off that are already converted. I think we don't need a meta issue for this, shouldn't be that big. Views is going to be a bit more complicated, and I'd wait with EntityManager for now.
Comment #4.0
ParisLiakos CreditAttribution: ParisLiakos commentedAdd the issue for aggregator
Comment #4.1
tim.plunkettupdated list
Comment #5
tim.plunkettAdded a table, will add an issue or two.
Comment #5.0
tim.plunkettturn into table
Comment #5.1
tim.plunkettadded TipPluginManager
Comment #5.2
tim.plunkettadded widget/formatter
Comment #5.3
amateescu CreditAttribution: amateescu commentedAdded the issue where SelectionPluginManager was converted.
Comment #5.4
BerdirUpdated issue summary.
Comment #6
star-szrMaking this more clearly a meta, that seems to be what was decided :)
Comment #6.0
star-szrAdd aggregator issue, again
Comment #6.1
aks22 CreditAttribution: aks22 commentedNew issue created.
Comment #6.2
tim.plunkettUpdated issue summary.
Comment #6.3
aks22 CreditAttribution: aks22 commentedNew Issue Created.
Comment #6.4
aks22 CreditAttribution: aks22 commentedNew Issue Created.
Comment #6.5
aks22 CreditAttribution: aks22 commentedNew Issue Created.
Comment #6.6
aks22 CreditAttribution: aks22 commentedNew issue created needs title to be reviewed
Comment #6.7
aks22 CreditAttribution: aks22 commentedNew Issue Created please review..
Comment #7
BerdirAdded #2204621: Convert InPlaceEditorManager to DefaultPluginManager and #2204635: Convert ViewsHandlerManager to DefaultPluginManager, #2039435: Convert EntityManager to extend DefaultPluginManager now also has a patch that needs review.
The only left over plugin managers are test implementations, Typed Config which is "special" and therefore not default, Action is blocked on #2155635: Allow plugin managers to opt in to cache clear during module install.
Please review, want to close this issue :)
Comment #8
BerdirAwesome, all done!
Opened #2271363: Remove CacheDecorator and ProcessDecorator to discuss the removal of the decorators that we no longer need/want.