Package and Bundle Versioning

Package version example

Package versions (0.0.1) has been added to org.clerezza.utils.rdf.simpletransaction, org.clerezza.utils.jaxrs.requesthandler.The package versions are specified in packageinfo files which are located in the packages themselves (see [1]). 

The parent pom (org.clerezza.cms.parent/pom.xml) needs to be adapted to define the class source locations as resource location by adding

                 <resources>
                        <resource>
                                <directory>src/main/java</directory>
                                <filtering>false</filtering>
                                <includes>
                                        <include>**/packageinfo</include>
                                        <include>**/package-info.java</include>
                                </includes>
                        </resource>
                </resources>

within the <build/> configuration

org.clerezza.cms.publishing.core imports both simpletransaction and requesthandler. It specifies in the pom.xml a version range according to its usage of these packages. The version range of simpletransaction is [0.0,0.1), because it implements the Commitable interface, and therefore would break if this interface would be extended. The version range of requesthandler is [0.0,1.0), because it only uses the requesthandler API and does not implement anything of it. See [3] for the semantic meaning of version number changes.

Links:http://www.osgi.org/wiki/uploads/Links/SemanticVersioning.pdf

[1] http://sling.apache.org/site/version-policy.html

[2] http://www.aqute.biz/Bnd/Versioning

[3] http://www.osgi.org/wiki/uploads/Links/SemanticVersioning.pdf

Labels

 
(None)