XWiki Commons
  1. XWiki Commons
  2. XCOMMONS-891

Replace Maven CLIRR with a more modern solution that works on java8

    Details

    • Documentation:
      Updated all pages on xwiki.org talking about CLIRR
    • Similar issues:
      XCOMMONS-283Upgrade to Maven Clirr plugin 2.5 and use more specific CLIRR excludes
      XCOMMONS-944Remove CLIRR + japicmp from the build
      XCOMMONS-482Upgrade to Clirr Maven Plugin 2.6
      XCOMMONS-853Upgrade to Maven Clirr Plugin 2.7
      XCOMMONS-106Upgrade Maven Site plugin to version 3.0
      XCOMMONS-337Replace MockitoComponentMockingRule by replacing getMockedComponent() by the more correct getComponentUnderTest()
      XCOMMONS-302Maven handler do more request than needed
      XCOMMONS-866Upgrade to Maven Checkstyle plugin 2.17 and checkstyle 6.12.1
      XCOMMONS-192Upgrade to Maven Release plugin 2.3.2
      XCOMMONS-97Upgrade Maven SSH Wagon to version 2.2

      Description

      [ERROR] Failed to execute goal org.codehaus.mojo:clirr-maven-plugin:2.7:check (clirr-check) on project xwiki-commons-logging-api: Execution clirr-check of goal org.codehaus.mojo:clirr-maven-plugin:2.7:check failed: Invalid byte tag in constant pool: 18 -> [Help 1]
      

      See https://github.com/mojohaus/clirr-maven-plugin/issues/3

        Issue Links

          Activity

          Hide
          Vincent Massol added a comment - - edited

          Starting a comparison that I'll update as I progress (note that I'm not reporting bugs here as they are being fixed):

          revapi:

          • only java 8
          • no way to specify def of artifact compared centrally for all cases (issue with packaging type = maven-archetype). Lukas said he's thinking about addressing this.
          • nicer reporting of errors directly in the maven logs and no extra files generated
          • only reports backward incompatibilities
          • ok when no previous version exists. However no warning printed, nothing printed at all. Could be improved
          • a few bugs found and fixed quickly after reported)
          • great support
          • awkward maven configuration using JSON (not able to perform maven inheritance leading to having to duplicate default excludes for internal and test packages)
          • TODO: speed test

          japicmp

          • java 8 but works also on java 7
          • no way to specify def of artifact compared centrally for all cases (issue with packaging type = maven-archetype)
          • need to open file to see the errors (diff, xml or html).
          • report all changes in the files (even changes that are not backward incompatible)
          • several bugs founds (and fixed quickly after reported) but still shows a greater lack of maturity
          • great support
          • better maven configuration
          • TODO: speed test
          Show
          Vincent Massol added a comment - - edited Starting a comparison that I'll update as I progress (note that I'm not reporting bugs here as they are being fixed): revapi: only java 8 no way to specify def of artifact compared centrally for all cases (issue with packaging type = maven-archetype). Lukas said he's thinking about addressing this. nicer reporting of errors directly in the maven logs and no extra files generated only reports backward incompatibilities ok when no previous version exists. However no warning printed, nothing printed at all. Could be improved a few bugs found and fixed quickly after reported) great support awkward maven configuration using JSON (not able to perform maven inheritance leading to having to duplicate default excludes for internal and test packages) TODO: speed test japicmp java 8 but works also on java 7 no way to specify def of artifact compared centrally for all cases (issue with packaging type = maven-archetype) need to open file to see the errors (diff, xml or html). report all changes in the files (even changes that are not backward incompatible) several bugs founds (and fixed quickly after reported) but still shows a greater lack of maturity great support better maven configuration TODO: speed test
          Hide
          Vincent Massol added a comment - - edited

          FTM:

          • revapi: enabled (requires java8)
          • japicmp: disabled (not fully working waiting for the 0.7.2 release to retest)
          • clirr: disabled (not working with java8)

          Remaining:

          • Verify everything works fine with revapi
          • Decide on revapi or japicmp (revapi seems the best choice ATM) We're using revapi
          • Document it
          • Remove XCOMMONS-891 branches
          Show
          Vincent Massol added a comment - - edited FTM: revapi: enabled (requires java8) japicmp: disabled ( not fully working waiting for the 0.7.2 release to retest ) clirr: disabled (not working with java8) Remaining: Verify everything works fine with revapi Decide on revapi or japicmp (revapi seems the best choice ATM) We're using revapi Document it Remove XCOMMONS-891 branches
          Hide
          Vincent Massol added a comment -

          Created XCOMMONS-944 to remember to remove CLIRR + japicmp when revapi proves it's working fine.

          Show
          Vincent Massol added a comment - Created XCOMMONS-944 to remember to remove CLIRR + japicmp when revapi proves it's working fine.
          Hide
          Vincent Massol added a comment -

          Documented in lots of places on xwiki.org; only one place remaining: http://dev.xwiki.org/xwiki/bin/view/ReleasePlans/ReleasePlanHelp#HGenerateBackwardCompatibilityReport

          Show
          Vincent Massol added a comment - Documented in lots of places on xwiki.org; only one place remaining: http://dev.xwiki.org/xwiki/bin/view/ReleasePlans/ReleasePlanHelp#HGenerateBackwardCompatibilityReport
          Show
          Vincent Massol added a comment - Release plan help page updated: http://dev.xwiki.org/xwiki/bin/view/ReleasePlans/ReleasePlanHelp#HGenerateBackwardCompatibilityReport

            People

            • Assignee:
              Vincent Massol
              Reporter:
              Vincent Massol
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: