GoogleCloudPlatform / GoogleCloudPlatform/cloud-opensource-java

Linkage Checker should report clearer error when an artifact name is incorrect

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

Descrição

Linkage Checker should report more clear error when an artifact name is incorrect. As of now, it fails with "IndexOutOfBoundsException" when a user passes invalid artifact ID:

```
Thu 14 Jan 2021 10:24:42 PM UTC: Running linkage check (validate) for beam-sdks-java-core beam-sdks-java-io-google-cloud-platform beam-runners-google-cloud-dataflow-java beam-sdks-java-io-hadoop-format sdks-java-io-kinesis sdks-java-extensions-sql-zetasql
Thu 14 Jan 2021 10:24:42 PM UTC: using baseline build/linkagecheck/baseline-sdks-java-extensions-sql-zetasql.xml
+ ./gradlew -Ppublishing -PskipCheckerFramework -PjavaLinkageArtifactIds=sdks-java-extensions-sql-zetasql -PjavaLinkageReadBaseline=build/linkagecheck/baseline-sdks-java-extensions-sql-zetasql.xml :checkJavaLinkage
Configuration on demand is an incubating feature.

> Task :checkJavaLinkage FAILED
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Exception in thread "main" java.lang.IndexOutOfBoundsException: end index (1) must not be greater than size (0)
at com.google.common.base.Preconditions.checkPositionIndexes(Preconditions.java:1420)
at com.google.common.collect.ImmutableList.subList(ImmutableList.java:433)
at com.google.cloud.tools.opensource.classpath.LinkageCheckerMain.main(LinkageCheckerMain.java:84)

FAILURE: Build failed with an exception.

```

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

Comece em LinkageCheckerMain.java:84, alcançado pela tarefa do Gradle :checkJavaLinkage, e inspecione como o valor javaLinkageArtifactIds é analisado quando um ID de artifact inválido é fornecido. Está concluído quando o comando relata um erro claro sobre o nome do artifact em vez de IndexOutOfBoundsException; use a saída do comando linkage-check para verificar o comportamento.

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
38/100

Receba novas issues na sua caixa de entrada

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