[
https://issues.apache.org/jira/browse/MENFORCER-325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Elliotte Rusty Harold resolved MENFORCER-325.
---------------------------------------------
Resolution: Won't Fix
That would weaken dependencyConvergence considerably but do see
[https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/Linkage-Checker-Enforcer-Rule-Tutorial]
which I think does what you want.
> 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
(v8.3.4#803005)