Explicit management of public API
---------------------------------

                 Key: JCR-3073
                 URL: https://issues.apache.org/jira/browse/JCR-3073
             Project: Jackrabbit Content Repository
          Issue Type: Improvement
          Components: jackrabbit-api, jackrabbit-jcr-commons
            Reporter: Jukka Zitting
             Fix For: 2.3.0


I'd like to start using the Clirr Maven plugin [1] to make sure that we don't 
accidentally break backwards compatibility in our public APIs, most notably in 
jackrabbit-api and jackrabbit-jcr-commons.

Also, we should start explicitly managing the API versions exposed as a part of 
the OSGi package metadata. Currently all our public packages simply get the 
latest project version as their version number, but it would be better if the 
version was explicitly managed and only updated if the API actually changes. To 
do this I propose we use @Version annotations from the bnd tool on the 
package-info.java files in all packages considered a part of our public API.

The Clirr plugin should flag all changes made in the API, so we have an easy 
way to tell which packages need to have their version numbers updated.

[1] http://mojo.codehaus.org/clirr-maven-plugin/

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to