[ 
https://issues.apache.org/jira/browse/SLING-8104?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16695086#comment-16695086
 ] 

David Bosschaert commented on SLING-8104:
-----------------------------------------

Thanks for the thoughts, Carsten.

I would propose the following for now. When specifying an override for an 
artifact:
 * This can be of a version other than in any of the features that declares it.
 * There can be multiple overrides for a single artifact, i.e. artifact Av1 can 
be overridden by both Av2 and Av3
 * The override must have the same groupID and artifactID - for now.

I think we should also allow specifying an override for an artifact that is 
listed already in a feature but that doesn't clash, this would satisfy 
[requirement 
SFL035|https://github.com/apache/sling-org-apache-sling-feature/blob/master/requirements.md].

> Avoid magic when merging features
> ---------------------------------
>
>                 Key: SLING-8104
>                 URL: https://issues.apache.org/jira/browse/SLING-8104
>             Project: Sling
>          Issue Type: Improvement
>          Components: Feature Model
>            Reporter: Carsten Ziegeler
>            Assignee: David Bosschaert
>            Priority: Blocker
>             Fix For: slingfeature-maven-plugin 1.0.0, Feature Model 0.8.0
>
>
> Currently when features are merged a simple algorithm is applied which just 
> picks the highest version based on the artifact version. However this version 
> might not have no meaning at all and might not really reflect what has 
> changed inside the bundle.
> Especially when there is a major version change, this approach seems to be 
> clearly wrong
> But in the end, picking a single version is magic.
> While the problem could probably be solved by using something like a resolver 
> and figure out if just one version is enough or if both versions are needed, 
> without a resolver there is no way to figure this out.
> Therefore we should provide a similar way as we do for variables at the 
> moment: if there is a clash the caller needs to provide context on what to 
> choose.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to