Uploaded image for project: 'Beam'
  1. Beam
  2. BEAM-9206

Easy way to run checkJavaLinkage?

Details

    • Bug
    • Status: Open
    • P3
    • Resolution: Unresolved
    • None
    • None
    • build-system
    • None

    Description

      Follow up of iemejia's comment: https://github.com/apache/beam/pull/10643#issuecomment-579276082

      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?

      Considerations

      • Something that can run on Jenkins
      • Comparison with the result of origin/master
      • Simple way to run checkJavaLinkage for all modules

      Options

      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 .

      2. Jenkins plugin

      Jenkins seems to have the feature to compare build result with a certain "reference build".

       

      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?

      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
      

      Or XML files to describe more nested structure.

       

       

      Attachments

        1. r2tG83tyDrn.png
          217 kB
          Tomo Suzuki

        Activity

          People

            Unassigned Unassigned
            suztomo Tomo Suzuki
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated: