[ https://issues.apache.org/jira/browse/SLING-8104?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16692293#comment-16692293 ]
ASF GitHub Bot commented on SLING-8104: --------------------------------------- bosschaert opened a new pull request #9: SLING-8104 Avoid magic when merging features URL: https://github.com/apache/sling-org-apache-sling-feature/pull/9 When merging artifacts/bundles, they need to be selected from a provided override list if the artifact versions are not the same. The list has the following syntax: * `groupid1:artifactid1:<resolution>` * `groupid2:artifactid2:<resolution>` To apply the same override rule for all clashes, a wildcard using '*' for groupID and artifactID can be used: * `*:*:<resolution>` means always select the same resolution in case of a clash. Where `<resolution>` is one of the following: * `ALL` - select all the artifacts * `HIGHEST` - select only the artifact with the highest version number * `LATEST` - select only the artifact provided latest * `<version>` - select this specific version When comparing version numbers these are converted to OSGi version numbers and the OSGi version number ordering is applied. When merging includes artifacts specified in the target feature override all artifacts with the same group ID and artifact ID in the included feature. Both the included as well the target feature can have multiple artifacts with the same group ID and artifact ID but different versions. ---------------------------------------------------------------- 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: us...@infra.apache.org > 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.2.2 > > > 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)