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

Enrico Olivelli edited comment on MENFORCER-325 at 2/22/19 9:04 PM:
--------------------------------------------------------------------

[~ccygnus] feel free to submit a patch :)

 

How can you decide whether two versions are "binary compatible" ?

Usually the rule of thumb is that a major version change may carry incompatible 
changes


was (Author: eolivelli):
[~ccygnus] feel free to submit a patch :)

> Add binary compatibility check to dependencyConvergence rule
> ------------------------------------------------------------
>
>                 Key: MENFORCER-325
>                 URL: https://issues.apache.org/jira/browse/MENFORCER-325
>             Project: Maven Enforcer Plugin
>          Issue Type: New Feature
>            Reporter: Marquis Wang
>            Priority: Major
>
> The dependencyConvergence rule is too strict to use in practice most of the 
> time. If you have a project with even a medium number of dependencies, they 
> are pretty much guaranteed to have transitive dependencies that do not 
> converge.
> For some very common dependencies like Guava, the maintainers of the project 
> are very careful to maintain binary compatibility with new releases. For 
> these dependencies, a dependency divergence is okay if the included node is 
> binary compatible with all of the diverging nodes.
> For example, if you have two dependencies, one if which depends on Guava 27 
> and the other depends on Guava 26, you can safely run with Guava 27 because 
> you know that it is compatible with 26.
> It would be really helpful if the dependencyConvergence rule were able to 
> check for binary compatibility and take it into account.



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

Reply via email to