GoogleCloudPlatform / GoogleCloudPlatform/cloud-opensource-java

Should ClassPathBuilder.resolve filter out irrelevant artifactproblems?

Aberta
#1,215 0 comentários 0 reações 0 responsáveis Ver no GitHub
p3 Tech Debt
Linguagem predominante
Java
Estrelas
163
Forks
80
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

Should ClassPathBuilder.resolve filter out irrelevant artifactproblems?

https://github.com/GoogleCloudPlatform/cloud-opensource-java/pull/1210/files#r378853356

As of now, it passes the whole artifactproblems from dependencygraphbuilder to the caller. But some of the artifacts are not selected for the resolved class path. Should it filter out such artifactproblems?

```
public ClassPathResult resolve(List artifacts) {
DependencyGraphResult graphResult = DependencyGraphBuilder....

return classPathResult
}
```

```
class ClassPathResult {
private final ImmutableList classPath;

private final ImmutableListMultimap dependencyPaths;

private final ImmutableList artifactProblems;
```

# Options

## Pass all artifact problems to the caller

current implementation. The caller of `resolve` may stop processing even when the artifact problems are only for artifacts that are not selected for `classPath`

## Pass only artifact problems that is related to `classPath`

This sounds reasonable.

## Throw an exception if there is an artifact problem

Because the caller needs the artifact problems to show the error anyway, this makes the caller's code unnecessarily complex.

Guia de contribuição

Abrir o guia de contribuição

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.