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

Add revapi-maven-plugin for API modification reports

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 2.22.0
    • build system
    • None
    • 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

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

            Dates

              Created:
              Updated:
              Resolved: