GoogleCloudPlatform / GoogleCloudPlatform/cloud-opensource-java
Dashboard and Linkage Checker to take option to resolve dependency graphs with Gradle's way
- 主要语言
- Java
- 星标
- 163
- 派生
- 80
- PR 合并指标
- 30 天内没有已合并 PR
描述
Dashboard (and Linkage Checker's ClassPathBuilder) to take an option to resolve dependency graphs with Gradle's way.
While reading errors in https://github.com/GoogleCloudPlatform/cloud-opensource-java/pull/1982#issuecomment-812277520, I noticed that the dependency conflicts (due to picking up old library versions) do not occur to Gradle users.
# Where is this affected?
The `LtsCompatibilityTestRunner` resolves the dependencies of the BOM:
```
ImmutableList bomManagedDependencies = bom.getManagedDependencies();
ClassPathBuilder classPathBuilder = new ClassPathBuilder();
ClassPathResult resolvedDependencies = classPathBuilder.resolve(bomManagedDependencies, false);
```
This resolves the dependencies in Maven's closest-win strategy. This strategy is prone to getting old dependencies which cause dependency conflicts. For Gradle users, the resolution is different; it uses highest-win strategy. Therefore, the current result shown in the pull request contain false positives and false negatives.
# GradleDependencyMediation?
We already have `MavenDependencyMediation`. I think the implementation would be creating GradleDependencyMediation.
贡献指南
评估
这个 Issue 还没有评估数据。