You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Andrei Pozolotin <an...@gmail.com> on 2013/04/10 19:27:43 UTC

RFP: Version Range Policy

    *Maven Developers*

    1) This is a formal request to resolve long standing version range
    policy problem in maven,
    expressed for example in the following ticket:
    http://jira.codehaus.org/browse/MNG-3092

    THE PROBLEM: LACK OF VERSION RANGE POLICY.

    2) I there are no better ideas, I suggest Maven to adopt OSGI
    Semantic Version Guidelines.
    https://github.com/barchart/barchart-version-tester/wiki/Version-Policy

    3) I have working prototype based on maven 3.0.4 with back port of
    aether 0.9.0.M2
    specifically applied to karaf use case, which could be generalized.
    https://github.com/barchart/barchart-maven-karaf-plugin

    4) there is an Aries version check plugin, that shows generic java
    binary compatibility checks
    which should be part of the new maven semantic version contract.
    https://github.com/apache/aries/tree/trunk/versioning

    Thank you,

    Andrei


Re: RFP: Version Range Policy

Posted by Hervé BOUTEMY <he...@free.fr>.
no time to work on it for the moment: my list is already full for at least a 
week or 2 to be able to release Maven 3.1-alpha-1 and everything necessary

but I probably will work with you on this topic after that: I don't know if I 
will agree with everything, but having some new ideas and proof of concept 
seems a right approach

Regards,

Hervé

Le mercredi 10 avril 2013 12:27:43 Andrei Pozolotin a écrit :
>     *Maven Developers*
> 
>     1) This is a formal request to resolve long standing version range
>     policy problem in maven,
>     expressed for example in the following ticket:
>     http://jira.codehaus.org/browse/MNG-3092
> 
>     THE PROBLEM: LACK OF VERSION RANGE POLICY.
> 
>     2) I there are no better ideas, I suggest Maven to adopt OSGI
>     Semantic Version Guidelines.
>     https://github.com/barchart/barchart-version-tester/wiki/Version-Policy
> 
>     3) I have working prototype based on maven 3.0.4 with back port of
>     aether 0.9.0.M2
>     specifically applied to karaf use case, which could be generalized.
>     https://github.com/barchart/barchart-maven-karaf-plugin
> 
>     4) there is an Aries version check plugin, that shows generic java
>     binary compatibility checks
>     which should be part of the new maven semantic version contract.
>     https://github.com/apache/aries/tree/trunk/versioning
> 
>     Thank you,
> 
>     Andrei

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: RFP: Version Range Policy

Posted by Andrei Pozolotin <an...@gmail.com>.
I would deal with this same way osgi does: guidelines, annotations, tools.

example:
* be clear if your jar is API artifact vs API consumer artifact vs API
provider artifact.
* @ConsumerType and @ProviderType will tell people what to expect.
* enforcement plugins will quickly educate about the distinctions.

since maven is "convention over configuration", this should work.

"Have you tried " - not yet, about to start :-). please share your
experience.

-------- Original Message --------
Subject: Re: RFP: Version Range Policy
From: David Jencks <da...@yahoo.com>
To: Maven Developers List <de...@maven.apache.org>
Date: Wed 10 Apr 2013 05:54:53 PM CDT
> so you are basically saying all packages are exported.  I think you will find that few meaningful code changes will result in a  non-major-version change whether or not the intended api changes.  Have you tried this out with some real non-osgi projects to see what versions you'd come up with and whether they correspond in any way with what the project developers think the versions are?
>
> thanks
> david jencks
>
> On Apr 10, 2013, at 3:23 PM, Andrei Pozolotin <an...@gmail.com> wrote:
>
>> I am more optimistic then you. here is the idea
>> https://github.com/barchart/barchart-version-tester/wiki/Maven-OSGI
>>
>> -------- Original Message --------
>> Subject: Re: RFP: Version Range Policy
>> From: David Jencks <da...@yahoo.com>
>> To: Maven Developers List <de...@maven.apache.org>
>> Date: Wed 10 Apr 2013 12:44:19 PM CDT
>>> Can you explain how you think osgi semantic versioning can reasonably be applied to non-osgi-bundles?  It typically takes a project a year or two to figure out what semantic versioning means when converting a project to osgi, I think you would find that trying to apply semantic versioning to non-osgi projects will mean that every update is a major version change.
>>>
>>> It would be nice if all projects converted to osgi and used semantic versioning correctly, but I don't think that is going to happen any time soon and I don't think the majority of maven projects will be osgi any time soon.
>>>
>>> thanks
>>> david jencks
>>> On Apr 10, 2013, at 10:27 AM, Andrei Pozolotin <an...@gmail.com> wrote:
>>>
>>>>   *Maven Developers*
>>>>
>>>>   1) This is a formal request to resolve long standing version range
>>>>   policy problem in maven,
>>>>   expressed for example in the following ticket:
>>>>   http://jira.codehaus.org/browse/MNG-3092
>>>>
>>>>   THE PROBLEM: LACK OF VERSION RANGE POLICY.
>>>>
>>>>   2) I there are no better ideas, I suggest Maven to adopt OSGI
>>>>   Semantic Version Guidelines.
>>>>   https://github.com/barchart/barchart-version-tester/wiki/Version-Policy
>>>>
>>>>   3) I have working prototype based on maven 3.0.4 with back port of
>>>>   aether 0.9.0.M2
>>>>   specifically applied to karaf use case, which could be generalized.
>>>>   https://github.com/barchart/barchart-maven-karaf-plugin
>>>>
>>>>   4) there is an Aries version check plugin, that shows generic java
>>>>   binary compatibility checks
>>>>   which should be part of the new maven semantic version contract.
>>>>   https://github.com/apache/aries/tree/trunk/versioning
>>>>
>>>>   Thank you,
>>>>
>>>>   Andrei
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>>> For additional commands, e-mail: dev-help@maven.apache.org
>>>
>>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>


Re: RFP: Version Range Policy

Posted by David Jencks <da...@yahoo.com>.
so you are basically saying all packages are exported.  I think you will find that few meaningful code changes will result in a  non-major-version change whether or not the intended api changes.  Have you tried this out with some real non-osgi projects to see what versions you'd come up with and whether they correspond in any way with what the project developers think the versions are?

thanks
david jencks

On Apr 10, 2013, at 3:23 PM, Andrei Pozolotin <an...@gmail.com> wrote:

> I am more optimistic then you. here is the idea
> https://github.com/barchart/barchart-version-tester/wiki/Maven-OSGI
> 
> -------- Original Message --------
> Subject: Re: RFP: Version Range Policy
> From: David Jencks <da...@yahoo.com>
> To: Maven Developers List <de...@maven.apache.org>
> Date: Wed 10 Apr 2013 12:44:19 PM CDT
>> Can you explain how you think osgi semantic versioning can reasonably be applied to non-osgi-bundles?  It typically takes a project a year or two to figure out what semantic versioning means when converting a project to osgi, I think you would find that trying to apply semantic versioning to non-osgi projects will mean that every update is a major version change.
>> 
>> It would be nice if all projects converted to osgi and used semantic versioning correctly, but I don't think that is going to happen any time soon and I don't think the majority of maven projects will be osgi any time soon.
>> 
>> thanks
>> david jencks
>> On Apr 10, 2013, at 10:27 AM, Andrei Pozolotin <an...@gmail.com> wrote:
>> 
>>>   *Maven Developers*
>>> 
>>>   1) This is a formal request to resolve long standing version range
>>>   policy problem in maven,
>>>   expressed for example in the following ticket:
>>>   http://jira.codehaus.org/browse/MNG-3092
>>> 
>>>   THE PROBLEM: LACK OF VERSION RANGE POLICY.
>>> 
>>>   2) I there are no better ideas, I suggest Maven to adopt OSGI
>>>   Semantic Version Guidelines.
>>>   https://github.com/barchart/barchart-version-tester/wiki/Version-Policy
>>> 
>>>   3) I have working prototype based on maven 3.0.4 with back port of
>>>   aether 0.9.0.M2
>>>   specifically applied to karaf use case, which could be generalized.
>>>   https://github.com/barchart/barchart-maven-karaf-plugin
>>> 
>>>   4) there is an Aries version check plugin, that shows generic java
>>>   binary compatibility checks
>>>   which should be part of the new maven semantic version contract.
>>>   https://github.com/apache/aries/tree/trunk/versioning
>>> 
>>>   Thank you,
>>> 
>>>   Andrei
>>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>> For additional commands, e-mail: dev-help@maven.apache.org
>> 
>> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: RFP: Version Range Policy

Posted by Andrei Pozolotin <an...@gmail.com>.
I am more optimistic then you. here is the idea
https://github.com/barchart/barchart-version-tester/wiki/Maven-OSGI

-------- Original Message --------
Subject: Re: RFP: Version Range Policy
From: David Jencks <da...@yahoo.com>
To: Maven Developers List <de...@maven.apache.org>
Date: Wed 10 Apr 2013 12:44:19 PM CDT
> Can you explain how you think osgi semantic versioning can reasonably be applied to non-osgi-bundles?  It typically takes a project a year or two to figure out what semantic versioning means when converting a project to osgi, I think you would find that trying to apply semantic versioning to non-osgi projects will mean that every update is a major version change.
>
> It would be nice if all projects converted to osgi and used semantic versioning correctly, but I don't think that is going to happen any time soon and I don't think the majority of maven projects will be osgi any time soon.
>
> thanks
> david jencks
> On Apr 10, 2013, at 10:27 AM, Andrei Pozolotin <an...@gmail.com> wrote:
>
>>    *Maven Developers*
>>
>>    1) This is a formal request to resolve long standing version range
>>    policy problem in maven,
>>    expressed for example in the following ticket:
>>    http://jira.codehaus.org/browse/MNG-3092
>>
>>    THE PROBLEM: LACK OF VERSION RANGE POLICY.
>>
>>    2) I there are no better ideas, I suggest Maven to adopt OSGI
>>    Semantic Version Guidelines.
>>    https://github.com/barchart/barchart-version-tester/wiki/Version-Policy
>>
>>    3) I have working prototype based on maven 3.0.4 with back port of
>>    aether 0.9.0.M2
>>    specifically applied to karaf use case, which could be generalized.
>>    https://github.com/barchart/barchart-maven-karaf-plugin
>>
>>    4) there is an Aries version check plugin, that shows generic java
>>    binary compatibility checks
>>    which should be part of the new maven semantic version contract.
>>    https://github.com/apache/aries/tree/trunk/versioning
>>
>>    Thank you,
>>
>>    Andrei
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>


Re: RFP: Version Range Policy

Posted by David Jencks <da...@yahoo.com>.
Can you explain how you think osgi semantic versioning can reasonably be applied to non-osgi-bundles?  It typically takes a project a year or two to figure out what semantic versioning means when converting a project to osgi, I think you would find that trying to apply semantic versioning to non-osgi projects will mean that every update is a major version change.

It would be nice if all projects converted to osgi and used semantic versioning correctly, but I don't think that is going to happen any time soon and I don't think the majority of maven projects will be osgi any time soon.

thanks
david jencks
On Apr 10, 2013, at 10:27 AM, Andrei Pozolotin <an...@gmail.com> wrote:

>    *Maven Developers*
> 
>    1) This is a formal request to resolve long standing version range
>    policy problem in maven,
>    expressed for example in the following ticket:
>    http://jira.codehaus.org/browse/MNG-3092
> 
>    THE PROBLEM: LACK OF VERSION RANGE POLICY.
> 
>    2) I there are no better ideas, I suggest Maven to adopt OSGI
>    Semantic Version Guidelines.
>    https://github.com/barchart/barchart-version-tester/wiki/Version-Policy
> 
>    3) I have working prototype based on maven 3.0.4 with back port of
>    aether 0.9.0.M2
>    specifically applied to karaf use case, which could be generalized.
>    https://github.com/barchart/barchart-maven-karaf-plugin
> 
>    4) there is an Aries version check plugin, that shows generic java
>    binary compatibility checks
>    which should be part of the new maven semantic version contract.
>    https://github.com/apache/aries/tree/trunk/versioning
> 
>    Thank you,
> 
>    Andrei
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org