[ 
https://issues.apache.org/jira/browse/ARIES-757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13191705#comment-13191705
 ] 

David Jencks commented on ARIES-757:
------------------------------------

I've made a bunch of changes to free this code from it's WAS ancestry and use 
it in a maven plugin.  While not ideal it is now usable. 

The "old" version of the bundle is explicitly configured and aether is used to 
fetch it to the local maven repository.  The "new" version is the jar in the 
target directory.

At the moment the maven plugin needs to be configured in the pom of the project 
you are interested in something like this:

{code}
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.aries.versioning</groupId>
                <artifactId>org.apache.aries.versioning.plugin</artifactId>
                <version>0.1.0-SNAPSHOT</version>
                <executions>
                    <execution>
                        <id>default-verify</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>version-check</goal>
                        </goals>
                        <configuration>
                            
<oldArtifact>org.apache.aries.blueprint:org.apache.aries.blueprint.core:0.3.1</oldArtifact>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
{code}

The results will then be reported in the build log something like this 
{code}
[INFO] --- org.apache.aries.versioning.plugin:0.1.0-SNAPSHOT:version-check 
(default-verify) @ org.apache.aries.blueprint.core ---
[INFO] <bundle fileName="org.apache.aries.blueprint.core-0.4.1-SNAPSHOT.jar" 
bundleSymbolicName ="org.apache.aries.blueprint.core" oldVersion="0.3.1" 
currentVersion="0.4.1.SNAPSHOT" recommendedVersion="1.0.0" correct="false" 
reason="Some packages have major changes. For an instance, the package 
org.apache.aries.blueprint.proxy has major version changes." change="major">
[INFO] <package name="org.apache.aries.blueprint.ext" oldVersion="0.3.1" 
currentVersion="0.4.0" recommendedVersion="1.0.0" correct="false" 
reason="&#13;&#10;&#13;&#10;The class/interface ExtNamespaceHandler.java has 
been deleted from the package.&#13;&#10;&#13;&#10;In the 
DependentComponentFactoryMetadata.java class or its supers, the following 
changes have been made since the last release.&#13;&#10;The method void 
init(org.apache.aries.blueprint.ExtendedBlueprintContainer) has been deleted or 
its return type or parameter list has changed.&#13;&#10;&#13;&#10;In the 
ComponentFactoryMetadata.java class or its supers, the following changes have 
been made since the last release.&#13;&#10;The method void 
init(org.apache.aries.blueprint.ExtendedBlueprintContainer) has been deleted or 
its return type or parameter list has changed." 
key_class="org/apache/aries/blueprint/ext/ComponentFactoryMetadata.java" 
change="major"/>
<package name="org.apache.aries.blueprint" oldVersion="0.3.1" 
currentVersion="0.4.0" recommendedVersion="1.0.0" correct="false" 
reason="&#13;&#10;&#13;&#10;The class/interface ParserService.java has been 
deleted from the package." 
key_class="org/apache/aries/blueprint/ExtendedReferenceListMetadata.java" 
change="major"/>
<package name="org.apache.aries.blueprint.mutable" oldVersion="0.3.1" 
currentVersion="0.3.2" recommendedVersion="0.4.0" correct="false" 
reason="&#13;&#10;&#13;&#10;In the MutableServiceReferenceMetadata.java class 
or its supers, the following abstract methods have been added since the last 
release of WAS.&#13;&#10;method org.osgi.framework.BundleContext 
getBundleContext()&#13;&#10;method void 
setBundleContext(org.osgi.framework.BundleContext)&#13;&#10;&#13;&#10;In the 
MutableReferenceListMetadata.java class or its supers, the following abstract 
methods have been added since the last release of WAS.&#13;&#10;method 
org.osgi.framework.BundleContext getBundleContext()&#13;&#10;method void 
setBundleContext(org.osgi.framework.BundleContext)&#13;&#10;&#13;&#10;In the 
MutableReferenceMetadata.java class or its supers, the following abstract 
methods have been added since the last release of WAS.&#13;&#10;method void 
setDefaultBean(java.lang.String)&#13;&#10;method 
org.osgi.framework.BundleContext getBundleContext()&#13;&#10;method 
java.lang.String getDefaultBean()&#13;&#10;method java.util.Collection 
getProxyChildBeanClasses()&#13;&#10;method void 
setProxyChildBeanClasses(java.util.Collection)&#13;&#10;method void 
setBundleContext(org.osgi.framework.BundleContext)" 
key_class="org/apache/aries/blueprint/mutable/MutableReferenceMetadata.java" 
change="minor"/>
<package name="org.apache.aries.blueprint.utils" oldVersion="0.3.1" 
currentVersion="0.4.0" recommendedVersion="1.0.0" correct="false" 
reason="&#13;&#10;&#13;&#10;In the ReflectionUtils$PropertyDescriptor.java 
class or its supers, the following changes have been made since the last 
release.&#13;&#10;The method void 
internalSet(org.apache.aries.blueprint.ExtendedBlueprintContainer, 
java.lang.Object, java.lang.Object) has been deleted or its return type or 
parameter list has changed.&#13;&#10;The method java.lang.Object 
get(java.lang.Object, org.apache.aries.blueprint.ExtendedBlueprintContainer) 
has been deleted or its return type or parameter list has changed.&#13;&#10;The 
method void set(java.lang.Object, java.lang.Object, 
org.apache.aries.blueprint.ExtendedBlueprintContainer) has been deleted or its 
return type or parameter list has changed.&#13;&#10;The method java.lang.Object 
internalGet(org.apache.aries.blueprint.ExtendedBlueprintContainer, 
java.lang.Object) has been deleted or its return type or parameter list has 
changed." 
key_class="org/apache/aries/blueprint/utils/ReflectionUtils$PropertyDescriptor.java"
 change="major"/>
{code}
                
> Contribute semantic versioning check tool 
> ------------------------------------------
>
>                 Key: ARIES-757
>                 URL: https://issues.apache.org/jira/browse/ARIES-757
>             Project: Aries
>          Issue Type: New Feature
>    Affects Versions: 0.4
>            Reporter: Emily Jiang
>            Assignee: Emily Jiang
>            Priority: Minor
>
> Based on the discussion on the dev mailing list, it seems that all of us like 
> to have a semantic versioning check tool.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to