Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-10785

Add revapi-maven-plugin for API modification reports

    XMLWordPrintableJSON

    Details

    • Type: New Feature
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.22.0
    • Component/s: build system
    • Labels:
      None
    • Estimated Complexity:
      Moderate

      Description

      http://revapi.org/modules/revapi-maven-plugin/

      Is a Maven plugin to help preventing breaking public APIs or to keep track of major change between version.

      This is the output of a sample run over camel-core/2.17.0 vs. camel-core/2.18.0

      https://camel-revapi.netlify.com/revapi-report.html

      The plugin is quite powerful in its capabilities.

      This is the list of the event it can detect:

      http://revapi.org/modules/revapi-java/differences.html

      But it can obviously be pre-configured to disable not interesting finds or to completely whitelist some occurrences.

      See for example, how the guys of Drools configure their:

      https://github.com/etirelli/droolsjbpm-knowledge/blob/647deee821281a507035a96025ac44d626e535ab/kie-api/src/build/revapi-config.json

      The plugin can make the build job fail, in case it finds a breaking change (probably too strict requirement for Camel) or just produce it's report.

      I'm attaching my sample pom.xml if people want to have something to start playing with.

        Attachments

        1. pom.xml
          4 kB
          Paolo Antinori

          Activity

            People

            • Assignee:
              onders Onder Sezgin
              Reporter:
              paolo.antinori Paolo Antinori
            • Votes:
              3 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: