[ 
https://issues.apache.org/jira/browse/BEAM-9206?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17026887#comment-17026887
 ] 

Luke Cwik commented on BEAM-9206:
---------------------------------

Reading the diff is difficult.

 

Typically I have seen people use an ignore list that is hardcoded somewhere 
such as the ones found in 
[spotbugs|https://github.com/apache/beam/blob/master/sdks/java/build-tools/src/main/resources/beam/spotbugs-filter.xml]
 and the test/tool runs and compares against that. This way the the contributor 
can update the existing list and get the test to pass and the reviewer can see 
what the edits were so the CL can "pass" all tests.

> Easy way to run checkJavaLinkage?
> ---------------------------------
>
>                 Key: BEAM-9206
>                 URL: https://issues.apache.org/jira/browse/BEAM-9206
>             Project: Beam
>          Issue Type: Bug
>          Components: build-system
>            Reporter: Tomo Suzuki
>            Assignee: Tomo Suzuki
>            Priority: Major
>         Attachments: r2tG83tyDrn.png
>
>
> Follow up of iemejia's comment: 
> [https://github.com/apache/beam/pull/10643#issuecomment-579276082]
> {quote}I just want some sort of ./gradlew :checkJavaLinkage that works for 
> the whole set of modules of the project. Is this 'feasible' with gradlew + 
> Beam?
> {quote}
> h1. Considerations
>  * Something that can run on Jenkins
>  * Comparison with the result of origin/master
>  * Simple way to run checkJavaLinkage for all modules
> h1. Options
> h2. 1. A shell script that runs checkJavaLinkage
> Short-term solution to help iemejia's 31 modules. 
> [https://github.com/apache/beam/pull/10643#issuecomment-578167314] .
> h2. 2. Jenkins plugin
> Jenkins seems to have the feature to compare build result with a certain 
> "reference build".
> !r2tG83tyDrn.png|width=618,height=389!
>  
> h2. 3. LinkageCheckerMain to take ignore exception list
> * LinkageCheckerMain to take an option to output JSON file containing linkage 
> errors.
>   The file is checked in to Git repository.
> * LinkageCheckerMain to take JSON file to ignore linkage errors
>   The class returns non-zero status if there're linkage errors outside the 
> {{ignore}} file.
>   The 
> Leveraging the fact that java class name or method name does not contain 
> "{{/}}", can we use {{.git-ignore}} syntax to specify linkage errors to 
> ignore?
> {noformat}
> com.google.guava:guava:25.1-jre/com.google.common.collection.ImmutableList/size
> com.google.guava:guava:*/**
> *weld-osgi-bundle*/**
> */com.github.luben.zstd.ZstdInputStream
> */com.github.luben.zstd.ZstdOutputStream
> */org.apache.beam.vendor.bytebuddy.v1_9_3.net.bytebuddy.jar.asm.commons.ModuleHashesAttribute
> {noformat}
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to