[
https://issues.apache.org/jira/browse/BEAM-4318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16480601#comment-16480601
]
Teng Peng commented on BEAM-4318:
---------------------------------
I have fixed most of the warnings, but I am still trying to find solutions for
this two:
This ons is a little weird because 1.I did not find the code (`public <T> T
get(PValue value)`) in the source file 2. If this is generated code, I have
already checkout your recent patch, in which generated code is excluded in
generating warnings.
{code:java}
/IdeaProjects/beam/runners/spark/src/main/java/org/apache/beam/runners/spark/translation/EvaluationContext.java:215:
warning: [TypeParameterUnusedInFormals] Declaring a type parameter that is
only used in the return type is a misuse of generics: operations on the type
parameter are unchecked, it hides unsafe casts at invocations of the method,
and it interacts badly with method overload resolution.
public <T> T get(PValue value) {
^
(see http://errorprone.info/bugpattern/TypeParameterUnusedInFormals){code}
I have tried 1. add an annotation to suppress the warning (tried everywhere)
2.replace the original code with the suggested one. However, I still see this
warning. I am thinking if we want to exclude path for every example in
generating warnings?
{code:java}
/Users/pt/IdeaProjects/beam/runners/spark/src/main/java/org/apache/beam/runners/spark/examples/WordCount.java:57:
warning: [StringSplitter] String.split(String) has surprising behavior
String[] words = c.element().split("[^\\p{L}]+");
^
(see http://errorprone.info/bugpattern/StringSplitter)
Did you mean 'Iterable<String> words =
Splitter.onPattern("[^\\p{L}]+").split(c.element());'?
{code}
Another question is are we going to fix
{code:java}
/IdeaProjects/beam/runners/core-java/build/classes/java/main/org/apache/beam/runners/core/metrics/package-info.class:
warning: Cannot find annotation method 'value()' in type 'DefaultAnnotation':
class file for edu.umd.cs.findbugs.annotations.DefaultAnnotation not found
{code}
I saw you have some changes of annotation library in build_rules.gradle. Not
sure if they are related.
Thanks!
> Enforce ErrorProne analysis in Spark runner project
> ---------------------------------------------------
>
> Key: BEAM-4318
> URL: https://issues.apache.org/jira/browse/BEAM-4318
> Project: Beam
> Issue Type: Improvement
> Components: runner-spark
> Reporter: Scott Wegner
> Priority: Minor
> Labels: errorprone, starter
>
> Java ErrorProne static analysis was [recently
> enabled|https://github.com/apache/beam/pull/5161] in the Gradle build
> process, but only as warnings. ErrorProne errors are generally useful and
> easy to fix. Some work was done to [make sdks-java-core
> ErrorProne-clean|https://github.com/apache/beam/pull/5319] and add
> enforcement. This task is clean ErrorProne warnings and add enforcement in
> {{beam-runners-spark}}. Additional context discussed on the [dev
> list|https://lists.apache.org/thread.html/95aae2785c3cd728c2d3378cbdff2a7ba19caffcd4faa2049d2e2f46@%3Cdev.beam.apache.org%3E].
> Fixing this issue will involve:
> # Follow instructions in the [Contribution
> Guide|https://beam.apache.org/contribute/] to set up a {{beam}} development
> environment.
> # Run the following command to compile and run ErrorProne analysis on the
> project: {{./gradlew :beam-runners-spark:assemble}}
> # Fix each ErrorProne warning from the {{runners/spark}} project.
> # In {{runners/spark/build.gradle}}, add {{failOnWarning: true}} to the call
> the {{applyJavaNature()}}
> ([example|https://github.com/apache/beam/pull/5319/files#diff-9390c20635aed5f42f83b97506a87333R20]).
> This starter issue is sponsored by [~swegner]. Feel free to [reach
> out|https://beam.apache.org/community/contact-us/] with questions or code
> review:
> * JIRA: [~swegner]
> * GitHub: [@swegner|https://github.com/swegner]
> * Slack: [@Scott Wegner|https://s.apache.org/beam-slack-channel]
> * Email: swegner at google dot com
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)