Closed (fixed)
Project:
Rules
Version:
8.x-3.x-dev
Component:
Rules Core
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Reporter:
Created:
2 Feb 2019 at 22:02 UTC
Updated:
26 Dec 2019 at 23:04 UTC
Jump to comment: Most recent, Most recent file
Comments
Comment #2
tr commentedDrupal 8.6.x will be supported until Drupal8.8.0 is released, which is scheduled for December 4, 2019
We can't make this change until Drupal 8.6.x becomes unsupported.
Comment #3
tr commentedWe're a month away from being able to commit this, thus I'm re-opening this so we can work on a patch and get it tested and ready to commit once 8.8.0 is released.
Comment #4
jonathan1055 commentedAdding to parent meta issue
Comment #5
andreyjan commentedWill work on this.
Comment #6
andreyjan commentedHere's the patch.
Comment #7
tr commentedFrom the change record linked in the original post:
ConfigurablePluginInterface was split into two new interfaces because calculateDependencies() is frequently not needed, which resulted in many unnecessary dummy calculateDependency() functions. The patch should NOT just add in both new interfaces without examining whether they are both needed or not.
After the patch there are still dummy implementations of calculateDependencies(). This implies that DependentPluginInterface may not be needed at all (which is part of the point of the core change ... ). And we have at least one place where calculateDependencies() is defined but there is no "implements DependentPluginInterface" (see RulesComponent.php).
All of these things need to be looked at and fixed if necessary. If no change is needed, then an explanation of why is still important so we know that they have all been looked at and carefully considered. See for example #3092000: ConfigurablePluginInterface is deprecated in core 8.7.x
Comment #8
andreyjan commented@TR thanks for the review.
I have removed DependentPluginInterface from RulesConfigurableEventHandlerInterface and the calculateDependencies() method from the implementing class. But I am still not sure if it should also be removed ExpressionInterface.
RulesComponent.php uses DependencyTrait and does not implement any interface, but it has a property casted to ExpressionInterface.
Comment #10
tr commentedCommitted. Thanks!