You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@aries.apache.org by Charlie Mordant <cm...@gmail.com> on 2014/07/02 13:44:50 UTC

Aries versioning plugin usage

Hi,

I noticed that many of the Aries module are using org.apache.aries.
versioning.plugin.

I suppose that this plugin aims to fulfil OSGI semantic versioning spec.
I'm also very interested by this aspect of OSGI is it possible to have some
clue on how integrating this plugin, knowing what does it do...
I can always try to integrate it in a sample project and see how it works,
but I'm not against some pointers.

Thank you in advance,

Best regards

-- 
Charlie Mordant

Full OSGI/EE stack made with Karaf: https://github.com/OsgiliathEnterprise
/net.osgiliath.parent

Re: Aries versioning plugin usage

Posted by Charlie Mordant <cm...@gmail.com>.
Looks nice too :).
Thank you David!


2014-07-02 16:42 GMT+02:00 David Bosschaert <da...@gmail.com>:

> Whoops that was the wrong link. The details are not yet at the link
> that I posted, but they are here:
> https://issues.apache.org/jira/browse/FELIX-4512
>
> On 2 July 2014 15:29, David Bosschaert <da...@gmail.com> wrote:
> > Another pointer here is that the latest version of the
> > maven-bundle-plugin contains functionality around semantic versioning
> > too. AFAIK it's centered around versions of exported packages (so not
> > around the bundle version).
> > The bundle plugin documentation doesn't really list this stuff yet,
> > but you can find details here:
> > http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html
> >
> > Cheers,
> >
> > David
> >
> > On 2 July 2014 15:12, Charlie Mordant <cm...@gmail.com> wrote:
> >> Hi Daniel,
> >>
> >> It's already a nice help on way the semantic versioning :).
> >>
> >> A nice alternative could be an extension of the maven-release-plugin
> that
> >> would batch set the modules versions instead of the usual prompt during
> the
> >> release:prepare phase (comparing with the last released artifacts).
> >>
> >> Best regards and many thanks, I'll use this plugin for sure!
> >>
> >>
> >> 2014-07-02 15:25 GMT+02:00 Emily Jiang <em...@googlemail.com>:
> >>
> >>> Thanks Daniel for your thorogh pointer. I would like all modules
> having a
> >>> baseline to compare against to have the version plugin enabled.
> >>> Regards
> >>> Emily
> >>>
> >>>
> >>> On Wed, Jul 2, 2014 at 1:58 PM, Daniel Kulp <dk...@apache.org> wrote:
> >>>>
> >>>>
> >>>> On Jul 2, 2014, at 7:44 AM, Charlie Mordant <cm...@gmail.com>
> wrote:
> >>>>
> >>>> I suppose that this plugin aims to fulfil OSGI semantic versioning
> spec.
> >>>> I'm also very interested by this aspect of OSGI is it possible to have
> >>>> some clue on how integrating this plugin, knowing what does it do...
> >>>> I can always try to integrate it in a sample project and see how it
> >>>> works, but I'm not against some pointers.
> >>>>
> >>>>
> >>>> For the most part, just add:
> >>>>
> >>>>                 <plugin>
> >>>>                     <groupId>org.apache.aries.versioning</groupId>
> >>>>
> >>>> <artifactId>org.apache.aries.versioning.plugin</artifactId>
> >>>>                     <version>0.3.0</version>
> >>>>                     <configuration>
> >>>>
> >>>>
> <oldArtifact>${project.groupId}:${project.artifactId}:${lastReleaseVersion}</oldArtifact>
> >>>>                     </configuration>
> >>>>                 </plugin>
> >>>>
> >>>> to the build section of your pom.   Then add a property:
> >>>>
> >>>>     <properties>
> >>>>        <lastReleaseVersion>1.4.0</lastReleaseVersion>
> >>>>     </properties>
> >>>>
> >>>> which is the version you want it to compare to (usually the latest
> >>>> release on that branch).   When you build, it will then check all the
> method
> >>>> signatures and such to compared to that last release and will fail
> the build
> >>>> if something is wrong.
> >>>>
> >>>> The main “complication” is that after a release, you have to go back
> and
> >>>> update all the “lastReleaseVersion” tags.  At some point, I’d like to
> update
> >>>> the plug to automatically attempt that by having Maven resolve the
> latest
> >>>> version that is not greater than the current version.    That’s a bit
> more
> >>>> complicated.   I’m also concerned about the reliability of that.
>  Using the
> >>>> property makes 100% sure it grabs the version you want it compared to.
> >>>>
> >>>>
> >>>> --
> >>>> Daniel Kulp
> >>>> dkulp@apache.org - http://dankulp.com/blog
> >>>> Talend Community Coder - http://coders.talend.com
> >>>>
> >>>
> >>>
> >>>
> >>> --
> >>> Thanks
> >>> Emily
> >>> =================
> >>> Emily Jiang
> >>> ejiang@apache.org
> >>
> >>
> >>
> >>
> >> --
> >> Charlie Mordant
> >>
> >> Full OSGI/EE stack made with Karaf:
> >> https://github.com/OsgiliathEnterprise/net.osgiliath.parent
>



-- 
Charlie Mordant

Full OSGI/EE stack made with Karaf:
https://github.com/OsgiliathEnterprise/net.osgiliath.parent

Re: Aries versioning plugin usage

Posted by David Bosschaert <da...@gmail.com>.
Whoops that was the wrong link. The details are not yet at the link
that I posted, but they are here:
https://issues.apache.org/jira/browse/FELIX-4512

On 2 July 2014 15:29, David Bosschaert <da...@gmail.com> wrote:
> Another pointer here is that the latest version of the
> maven-bundle-plugin contains functionality around semantic versioning
> too. AFAIK it's centered around versions of exported packages (so not
> around the bundle version).
> The bundle plugin documentation doesn't really list this stuff yet,
> but you can find details here:
> http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html
>
> Cheers,
>
> David
>
> On 2 July 2014 15:12, Charlie Mordant <cm...@gmail.com> wrote:
>> Hi Daniel,
>>
>> It's already a nice help on way the semantic versioning :).
>>
>> A nice alternative could be an extension of the maven-release-plugin that
>> would batch set the modules versions instead of the usual prompt during the
>> release:prepare phase (comparing with the last released artifacts).
>>
>> Best regards and many thanks, I'll use this plugin for sure!
>>
>>
>> 2014-07-02 15:25 GMT+02:00 Emily Jiang <em...@googlemail.com>:
>>
>>> Thanks Daniel for your thorogh pointer. I would like all modules having a
>>> baseline to compare against to have the version plugin enabled.
>>> Regards
>>> Emily
>>>
>>>
>>> On Wed, Jul 2, 2014 at 1:58 PM, Daniel Kulp <dk...@apache.org> wrote:
>>>>
>>>>
>>>> On Jul 2, 2014, at 7:44 AM, Charlie Mordant <cm...@gmail.com> wrote:
>>>>
>>>> I suppose that this plugin aims to fulfil OSGI semantic versioning spec.
>>>> I'm also very interested by this aspect of OSGI is it possible to have
>>>> some clue on how integrating this plugin, knowing what does it do...
>>>> I can always try to integrate it in a sample project and see how it
>>>> works, but I'm not against some pointers.
>>>>
>>>>
>>>> For the most part, just add:
>>>>
>>>>                 <plugin>
>>>>                     <groupId>org.apache.aries.versioning</groupId>
>>>>
>>>> <artifactId>org.apache.aries.versioning.plugin</artifactId>
>>>>                     <version>0.3.0</version>
>>>>                     <configuration>
>>>>
>>>> <oldArtifact>${project.groupId}:${project.artifactId}:${lastReleaseVersion}</oldArtifact>
>>>>                     </configuration>
>>>>                 </plugin>
>>>>
>>>> to the build section of your pom.   Then add a property:
>>>>
>>>>     <properties>
>>>>        <lastReleaseVersion>1.4.0</lastReleaseVersion>
>>>>     </properties>
>>>>
>>>> which is the version you want it to compare to (usually the latest
>>>> release on that branch).   When you build, it will then check all the method
>>>> signatures and such to compared to that last release and will fail the build
>>>> if something is wrong.
>>>>
>>>> The main “complication” is that after a release, you have to go back and
>>>> update all the “lastReleaseVersion” tags.  At some point, I’d like to update
>>>> the plug to automatically attempt that by having Maven resolve the latest
>>>> version that is not greater than the current version.    That’s a bit more
>>>> complicated.   I’m also concerned about the reliability of that.  Using the
>>>> property makes 100% sure it grabs the version you want it compared to.
>>>>
>>>>
>>>> --
>>>> Daniel Kulp
>>>> dkulp@apache.org - http://dankulp.com/blog
>>>> Talend Community Coder - http://coders.talend.com
>>>>
>>>
>>>
>>>
>>> --
>>> Thanks
>>> Emily
>>> =================
>>> Emily Jiang
>>> ejiang@apache.org
>>
>>
>>
>>
>> --
>> Charlie Mordant
>>
>> Full OSGI/EE stack made with Karaf:
>> https://github.com/OsgiliathEnterprise/net.osgiliath.parent

Re: Aries versioning plugin usage

Posted by David Bosschaert <da...@gmail.com>.
Another pointer here is that the latest version of the
maven-bundle-plugin contains functionality around semantic versioning
too. AFAIK it's centered around versions of exported packages (so not
around the bundle version).
The bundle plugin documentation doesn't really list this stuff yet,
but you can find details here:
http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html

Cheers,

David

On 2 July 2014 15:12, Charlie Mordant <cm...@gmail.com> wrote:
> Hi Daniel,
>
> It's already a nice help on way the semantic versioning :).
>
> A nice alternative could be an extension of the maven-release-plugin that
> would batch set the modules versions instead of the usual prompt during the
> release:prepare phase (comparing with the last released artifacts).
>
> Best regards and many thanks, I'll use this plugin for sure!
>
>
> 2014-07-02 15:25 GMT+02:00 Emily Jiang <em...@googlemail.com>:
>
>> Thanks Daniel for your thorogh pointer. I would like all modules having a
>> baseline to compare against to have the version plugin enabled.
>> Regards
>> Emily
>>
>>
>> On Wed, Jul 2, 2014 at 1:58 PM, Daniel Kulp <dk...@apache.org> wrote:
>>>
>>>
>>> On Jul 2, 2014, at 7:44 AM, Charlie Mordant <cm...@gmail.com> wrote:
>>>
>>> I suppose that this plugin aims to fulfil OSGI semantic versioning spec.
>>> I'm also very interested by this aspect of OSGI is it possible to have
>>> some clue on how integrating this plugin, knowing what does it do...
>>> I can always try to integrate it in a sample project and see how it
>>> works, but I'm not against some pointers.
>>>
>>>
>>> For the most part, just add:
>>>
>>>                 <plugin>
>>>                     <groupId>org.apache.aries.versioning</groupId>
>>>
>>> <artifactId>org.apache.aries.versioning.plugin</artifactId>
>>>                     <version>0.3.0</version>
>>>                     <configuration>
>>>
>>> <oldArtifact>${project.groupId}:${project.artifactId}:${lastReleaseVersion}</oldArtifact>
>>>                     </configuration>
>>>                 </plugin>
>>>
>>> to the build section of your pom.   Then add a property:
>>>
>>>     <properties>
>>>        <lastReleaseVersion>1.4.0</lastReleaseVersion>
>>>     </properties>
>>>
>>> which is the version you want it to compare to (usually the latest
>>> release on that branch).   When you build, it will then check all the method
>>> signatures and such to compared to that last release and will fail the build
>>> if something is wrong.
>>>
>>> The main “complication” is that after a release, you have to go back and
>>> update all the “lastReleaseVersion” tags.  At some point, I’d like to update
>>> the plug to automatically attempt that by having Maven resolve the latest
>>> version that is not greater than the current version.    That’s a bit more
>>> complicated.   I’m also concerned about the reliability of that.  Using the
>>> property makes 100% sure it grabs the version you want it compared to.
>>>
>>>
>>> --
>>> Daniel Kulp
>>> dkulp@apache.org - http://dankulp.com/blog
>>> Talend Community Coder - http://coders.talend.com
>>>
>>
>>
>>
>> --
>> Thanks
>> Emily
>> =================
>> Emily Jiang
>> ejiang@apache.org
>
>
>
>
> --
> Charlie Mordant
>
> Full OSGI/EE stack made with Karaf:
> https://github.com/OsgiliathEnterprise/net.osgiliath.parent

Re: Aries versioning plugin usage

Posted by Charlie Mordant <cm...@gmail.com>.
Hi Daniel,

It's already a nice help on way the semantic versioning :).

A nice alternative could be an extension of the maven-release-plugin that
would batch set the modules versions instead of the usual prompt during the
release:prepare phase (comparing with the last released artifacts).

Best regards and many thanks, I'll use this plugin for sure!


2014-07-02 15:25 GMT+02:00 Emily Jiang <em...@googlemail.com>:

> Thanks Daniel for your thorogh pointer. I would like all modules having a
> baseline to compare against to have the version plugin enabled.
> Regards
> Emily
>
>
> On Wed, Jul 2, 2014 at 1:58 PM, Daniel Kulp <dk...@apache.org> wrote:
>
>>
>> On Jul 2, 2014, at 7:44 AM, Charlie Mordant <cm...@gmail.com> wrote:
>>
>> I suppose that this plugin aims to fulfil OSGI semantic versioning spec.
>> I'm also very interested by this aspect of OSGI is it possible to have
>> some clue on how integrating this plugin, knowing what does it do...
>> I can always try to integrate it in a sample project and see how it
>> works, but I'm not against some pointers.
>>
>>
>> For the most part, just add:
>>
>>                 <plugin>
>>                     <groupId>org.apache.aries.versioning</groupId>
>>
>> <artifactId>org.apache.aries.versioning.plugin</artifactId>
>>                     <version>0.3.0</version>
>>                     <configuration>
>>
>> <oldArtifact>${project.groupId}:${project.artifactId}:${lastReleaseVersion}</oldArtifact>
>>                     </configuration>
>>                 </plugin>
>>
>> to the build section of your pom.   Then add a property:
>>
>>     <properties>
>>        <lastReleaseVersion>1.4.0</lastReleaseVersion>
>>     </properties>
>>
>> which is the version you want it to compare to (usually the latest
>> release on that branch).   When you build, it will then check all the
>> method signatures and such to compared to that last release and will fail
>> the build if something is wrong.
>>
>> The main “complication” is that after a release, you have to go back and
>> update all the “lastReleaseVersion” tags.  At some point, I’d like to
>> update the plug to automatically attempt that by having Maven resolve the
>> latest version that is not greater than the current version.    That’s a
>> bit more complicated.   I’m also concerned about the reliability of that.
>>  Using the property makes 100% sure it grabs the version you want it
>> compared to.
>>
>>
>> --
>> Daniel Kulp
>> dkulp@apache.org - http://dankulp.com/blog
>> Talend Community Coder - http://coders.talend.com
>>
>>
>
>
> --
> Thanks
> Emily
> =================
> Emily Jiang
> ejiang@apache.org
>



-- 
Charlie Mordant

Full OSGI/EE stack made with Karaf:
https://github.com/OsgiliathEnterprise/net.osgiliath.parent

Re: Aries versioning plugin usage

Posted by Emily Jiang <em...@googlemail.com>.
Thanks Daniel for your thorogh pointer. I would like all modules having a
baseline to compare against to have the version plugin enabled.
Regards
Emily


On Wed, Jul 2, 2014 at 1:58 PM, Daniel Kulp <dk...@apache.org> wrote:

>
> On Jul 2, 2014, at 7:44 AM, Charlie Mordant <cm...@gmail.com> wrote:
>
> I suppose that this plugin aims to fulfil OSGI semantic versioning spec.
> I'm also very interested by this aspect of OSGI is it possible to have
> some clue on how integrating this plugin, knowing what does it do...
> I can always try to integrate it in a sample project and see how it works,
> but I'm not against some pointers.
>
>
> For the most part, just add:
>
>                 <plugin>
>                     <groupId>org.apache.aries.versioning</groupId>
>
> <artifactId>org.apache.aries.versioning.plugin</artifactId>
>                     <version>0.3.0</version>
>                     <configuration>
>
> <oldArtifact>${project.groupId}:${project.artifactId}:${lastReleaseVersion}</oldArtifact>
>                     </configuration>
>                 </plugin>
>
> to the build section of your pom.   Then add a property:
>
>     <properties>
>        <lastReleaseVersion>1.4.0</lastReleaseVersion>
>     </properties>
>
> which is the version you want it to compare to (usually the latest release
> on that branch).   When you build, it will then check all the method
> signatures and such to compared to that last release and will fail the
> build if something is wrong.
>
> The main “complication” is that after a release, you have to go back and
> update all the “lastReleaseVersion” tags.  At some point, I’d like to
> update the plug to automatically attempt that by having Maven resolve the
> latest version that is not greater than the current version.    That’s a
> bit more complicated.   I’m also concerned about the reliability of that.
>  Using the property makes 100% sure it grabs the version you want it
> compared to.
>
>
> --
> Daniel Kulp
> dkulp@apache.org - http://dankulp.com/blog
> Talend Community Coder - http://coders.talend.com
>
>


-- 
Thanks
Emily
=================
Emily Jiang
ejiang@apache.org

Re: Aries versioning plugin usage

Posted by Daniel Kulp <dk...@apache.org>.
On Jul 2, 2014, at 7:44 AM, Charlie Mordant <cm...@gmail.com> wrote:
> I suppose that this plugin aims to fulfil OSGI semantic versioning spec.
> I'm also very interested by this aspect of OSGI is it possible to have some clue on how integrating this plugin, knowing what does it do...
> I can always try to integrate it in a sample project and see how it works, but I'm not against some pointers.

For the most part, just add:

                <plugin>
                    <groupId>org.apache.aries.versioning</groupId>
                    <artifactId>org.apache.aries.versioning.plugin</artifactId>
                    <version>0.3.0</version>
                    <configuration>
                        <oldArtifact>${project.groupId}:${project.artifactId}:${lastReleaseVersion}</oldArtifact>
                    </configuration>
                </plugin>

to the build section of your pom.   Then add a property:

    <properties>
       <lastReleaseVersion>1.4.0</lastReleaseVersion>
    </properties>

which is the version you want it to compare to (usually the latest release on that branch).   When you build, it will then check all the method signatures and such to compared to that last release and will fail the build if something is wrong.   

The main “complication” is that after a release, you have to go back and update all the “lastReleaseVersion” tags.  At some point, I’d like to update the plug to automatically attempt that by having Maven resolve the latest version that is not greater than the current version.    That’s a bit more complicated.   I’m also concerned about the reliability of that.  Using the property makes 100% sure it grabs the version you want it compared to.


-- 
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com