GoogleCloudPlatform / GoogleCloudPlatform/cloud-opensource-java

LinkageCheckerMain shows duplicate causes

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

Descrição

When running LinkageCheckerMain for Beam, https://gist.github.com/suztomo/0ba02d93aa0b2f5d9701c50f7d7fd81f had duplicate "Dependency conflict" cause for one linkage error. For example:

```
Class com.google.pubsub.v1.DeleteSchemaRequest is not found;
Exception in thread "main" referenced by 2 class files
com.google.cloud.pubsub.v1.stub.GrpcSchemaServiceStub (com.google.cloud:google-cloud-pubsub:1.111.0)
com.google.cloud.pubsub.v1.SchemaServiceClient (com.google.cloud:google-cloud-pubsub:1.111.0)
Cause:
Dependency conflict: com.google.api.grpc:proto-google-cloud-pubsub-v1:1.90.3 does not define Class com.google.pubsub.v1.DeleteSchemaRequest but com.google.api.grpc:proto-google-cloud-pubsub-v1:1.93.0 defines it.
selected: org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.29.0-SNAPSHOT / com.google.api.grpc:proto-google-cloud-pubsub-v1:1.90.3 (compile)
unselected: org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.29.0-SNAPSHOT / com.google.cloud:google-cloud-pubsub:1.111.0 (compile) / com.google.api.grpc:proto-google-cloud-pubsub-v1:1.93.0 (compile)
Dependency conflict: com.google.api.grpc:proto-google-cloud-pubsub-v1:1.90.3 does not define Class com.google.pubsub.v1.DeleteSchemaRequest but com.google.api.grpc:proto-google-cloud-pubsub-v1:1.93.0 defines it.
selected: org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.29.0-SNAPSHOT / com.google.api.grpc:proto-google-cloud-pubsub-v1:1.90.3 (compile)
unselected: org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.29.0-SNAPSHOT / com.google.cloud:google-cloud-pubsub:1.111.0 (compile) / com.google.api.grpc:proto-google-cloud-pubsub-v1:1.93.0 (compile)

```

and

```
Class com.google.pubsub.v1.ListSchemasResponse is not found;
referenced by 3 class files
at com.google.cloud.tools.opensource.classpath.LinkageCheckerMain.main(LinkageCheckerMain.java:76)
com.google.cloud.pubsub.v1.stub.SchemaServiceStubSettings (com.google.cloud:google-cloud-pubsub:1.111.0)
com.google.cloud.pubsub.v1.stub.GrpcSchemaServiceStub (com.google.cloud:google-cloud-pubsub:1.111.0)
com.google.cloud.pubsub.v1.SchemaServiceClient (com.google.cloud:google-cloud-pubsub:1.111.0)
Cause:
Dependency conflict: com.google.api.grpc:proto-google-cloud-pubsub-v1:1.90.3 does not define Class com.google.pubsub.v1.ListSchemasResponse but com.google.api.grpc:proto-google-cloud-pubsub-v1:1.93.0 defines it.
selected: org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.29.0-SNAPSHOT / com.google.api.grpc:proto-google-cloud-pubsub-v1:1.90.3 (compile)
unselected: org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.29.0-SNAPSHOT / com.google.cloud:google-cloud-pubsub:1.111.0 (compile) / com.google.api.grpc:proto-google-cloud-pubsub-v1:1.93.0 (compile)
Dependency conflict: com.google.api.grpc:proto-google-cloud-pubsub-v1:1.90.3 does not define Class com.google.pubsub.v1.ListSchemasResponse but com.google.api.grpc:proto-google-cloud-pubsub-v1:1.93.0 defines it.
selected: org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.29.0-SNAPSHOT / com.google.api.grpc:proto-google-cloud-pubsub-v1:1.90.3 (compile)
unselected: org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.29.0-SNAPSHOT / com.google.cloud:google-cloud-pubsub:1.111.0 (compile) / com.google.api.grpc:proto-google-cloud-pubsub-v1:1.93.0 (compile)
Dependency conflict: com.google.api.grpc:proto-google-cloud-pubsub-v1:1.90.3 does not define Class com.google.pubsub.v1.ListSchemasResponse but com.google.api.grpc:proto-google-cloud-pubsub-v1:1.93.0 defines it.
selected: org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.29.0-SNAPSHOT / com.google.api.grpc:proto-google-cloud-pubsub-v1:1.90.3 (compile)
unselected: org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.29.0-SNAPSHOT / com.google.cloud:google-cloud-pubsub:1.111.0 (compile) / com.google.api.grpc:proto-google-cloud-pubsub-v1:1.93.0 (compile)
```

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

Comece em LinkageCheckerMain.java:76 e reproduza a saída duplicada de "Dependency conflict" usando o exemplo do Beam e o gist vinculado. Rastreie como as causas são coletadas ou renderizadas e, em seguida, verifique se cada erro de linkage relata o conflito apenas uma vez.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
java
Domínio
tooling
Tipo de issue
Bug
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
42/100

Receba novas issues na sua caixa de entrada

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