bosschaert commented on issue #8: SLING-8104 Avoid magic when merging features
URL: 
https://github.com/apache/sling-org-apache-sling-feature/pull/8#issuecomment-439724403
 
 
   Hi @cziegeler I thought a little bit more about the includes…
   
   I totally agree that the includes should be processed without the needs for 
external overrides.
   However I'm not sure that supporting two concurrent versions with an include 
is necessary. With an include you are creating a new feature while using an 
existing feature as its prototype. Basically you take an existing feature that 
comes close to what you need, tweak that and as such define a new feature.
   When you create a normal feature (without using includes) you wouldn’t 
create a feature with the same bundle in different versions twice, would you? 
So why support two different versions through the includes/prototype mechanism?
   I think side-by-side versions could be useful when one feature provides a 
capability required by another feature, but to define a single feature with two 
identical bundles with different versions side-by-side sounds like an unlikely 
edge case.
   
   I think a simpler approach is as follows. Given a bundle Xv2 in feature A 
that includes feature I which also declared bundle Xv1, this should simply 
select the bundle Xv2 from feature A as you are tweaking the definition of I in 
A. If you want to select Xv1 from I you simply remove it from the definition of 
A. 
   
   The case where a HIGHEST algorithm should be used is confusing here IMHO 
because let’s say I defines Xv3 instead of Xv1, then it would still be 
confusing/strange if the include would override the entity that is including 
it. A prototype object normally doesn’t override/ignore any specialisations 
made to it, so I would not support this algorithm for the Includes case.
   
   My 2c :) 
   
   David

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to