[ 
https://issues.apache.org/jira/browse/BEAM-9206?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tomo Suzuki updated BEAM-9206:
------------------------------
    Description: 
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}

Or XML files to describe more nested structure.



 

 

  was:
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}





 

 


> 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}
> Or XML files to describe more nested structure.
>  
>  



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

Reply via email to